当前位置: 首页 > 知识库问答 >
问题:

在pubsub模拟器上创建主题

梅玉堂
2023-03-14

我开始使用pubsub模拟器来测试我的基本实现,但在试图创建一个新主题时遇到了一个问题。

我的模拟器监听LocalHost:8085,如果我通过api创建主题

PUT http://localhost:8085/v1/projects/testproject/topics/test
    TopicName topicName = TopicName.create("testproject", "test");
    ChannelProvider channelProvider =
            TopicAdminSettings.defaultChannelProviderBuilder()
                .setEndpoint("localhost:8085")
                .setCredentialsProvider(
                        FixedCredentialsProvider.create(NoCredentials.getInstance()))
                .build();
    TopicAdminClient topicClient = TopicAdminClient.create(
            TopicAdminSettings.defaultBuilder().setChannelProvider(channelProvider).build());
        topicClient.createTopic(topicName);
[pubsub] Apr 27, 2017 1:10:47 PM io.gapi.emulators.grpc.GrpcServer$3 operationComplete
[pubsub] INFORMATION: Adding handler(s) to newly registered Channel.
[pubsub] Apr 27, 2017 1:10:47 PM io.gapi.emulators.netty.HttpVersionRoutingHandler channelRead
[pubsub] INFORMATION: Detected non-HTTP/2 connection.
[pubsub] Apr 27, 2017 1:10:47 PM io.gapi.emulators.netty.NotFoundHandler handleRequest
[pubsub] INFORMATION: Unknown request URI: /bad-request
[pubsub] Apr 27, 2017 1:10:47 PM io.gapi.emulators.grpc.GrpcServer$3 operationComplete
[pubsub] INFORMATION: Adding handler(s) to newly registered Channel.
[pubsub] Apr 27, 2017 1:10:47 PM io.gapi.emulators.netty.HttpVersionRoutingHandler channelRead
[pubsub] INFORMATION: Detected non-HTTP/2 connection.
[pubsub] Apr 27, 2017 1:10:47 PM io.gapi.emulators.netty.NotFoundHandler handleRequest
[pubsub] INFORMATION: Unknown request URI: /bad-request

...    

[pubsub] Apr 27, 2017 1:10:49 PM io.gapi.emulators.grpc.GrpcServer$3 operationComplete
[pubsub] INFORMATION: Adding handler(s) to newly registered Channel.
[pubsub] Apr 27, 2017 1:10:49 PM io.gapi.emulators.netty.HttpVersionRoutingHandler channelRead
[pubsub] INFORMATION: Detected non-HTTP/2 connection.

也许有人能帮我解决这个问题。

共有1个答案

司凡
2023-03-14

用于与仿真程序通信的通道需要将motiationtype属性设置为motiationtype.plaintext。这意味着您需要创建一个自定义的ChannelProvider。下面这样的操作应该有效:

public class PlainTextChannelProvider implements ChannelProvider {
  @Override
  public boolean shouldAutoClose() {
    return false;
  }

  @Override
  public boolean needsExecutor() {
    return false;
  }

  @Override
  public ManagedChannel getChannel() throws IOException {
    return NettyChannelBuilder.forAddress("localhost", 8085)
      .negotiationType(NegotiationType.PLAINTEXT)
      .build();
  }

  @Override
  public ManagedChannel getChannel(Executor executor) throws IOException {
    return getChannel();
  }
}
 类似资料:
  • 我已经添加/设置了firebase pubsub模拟器,该模拟器运行在我的本地主机的端口8085上。在此之前,我需要使用Googel cloud中的pubsub,在那里我可以使用他们的控制台创建主题,也可以查看发布到这些主题的消息。 任何帮助都很感激。

  • 我是一个新的android,当我点击运行按钮创建AVD时,它出现如下,我不能理解它说什么,请帮助我理解它是什么意思,我如何解决这个问题 C:\users\neil\appdata\local\android\sdk2\tools\emulator.exe-avd Nexus_S_API_21-netspeed full-netdelay none使用参数创建文件系统:无法获取wglGetExten

  • 问题内容: 我确信这个问题已经被问过很多次了,但是我没有遇到任何问题。我在配置Zend框架的地方使用XAMPP。 XAMPP在 端口8081 上运行,因为 80 正在被某些Windows进程占用,因此我需要使用以下(或在较新版本中)以下代码配置的虚拟主机。 并使用来更新hosts文件,并尝试重新启动apache,但显示错误。 问题答案: 我看到两个错误: 固定版本: 一件事要提到: 您可以随时尝试

  • 我正在使用LinuxMint17.3,并试图在Apache2.4上创建虚拟主机。我已按照以下步骤操作,但仍然无法浏览该网站: > 修改每个主机 sudo vim/etc/apache2/sites available/site1。通用域名格式。conf 服务器名站点1。com 服务器别名www.site1。com ServerAdminadmin@site1.com DocumentRoot/va

  • 我正在尝试设置我的开发环境。我一直在使用pubsub模拟器进行开发和测试,而不是在生产中使用谷歌云pubsub。为此,我设置了以下环境变量: 这适用于python google pubsub库,但当我切换到使用java apache beam进行google数据流时,管道仍然指向生产google pubsub。管道上是否有需要设置的设置、环境变量或方法,以便管道读取本地pubsub仿真器?

  • 创建仿真程序时,遇到以下错误 保留块组大小:7个创建的文件系统,有11/4224个索引节点和1302/16896个块Hax已启用Hax ram_size0x40000000HAX正在工作,模拟器在快速virt模式下运行。ADB_Server_Notify:未能在端口5554上建立与ADB服务器控制台的连接,端口5555上的ADB模拟器:错误:无法初始化OpenglES仿真,请使用“-GPU OFF