我正在尝试从我的.NET核心应用程序发布到谷歌PubSub。我已经在谷歌PubSub中创建了PubSub和一个主题。我下载了私钥json文件并将其包含在我的项目中。我可以读取文件并创建凭据,但我没有看到将凭据传递给谷歌的PubSub Publisher客户端的方法。我已经查看了GitHub Post,但不幸的是,我没有看到名为DefaultEndPoint的属性。
运行我的代码会产生一个错误,它正在寻找凭据的环境变量。我现在不想设置环境变量,如果没有其他选择,我会尝试这样做。
以下是我的代码,让我知道我做错了什么是最近发生了变化。
PublisherClient.CreateAsync(topicName).Result;凭据= GoogleCredential.FromFile("app-services.json");PublisherClient publisher = var
发布于 2018-09-21 22:09:42
我同意这并不像它应该的那样明显。
using Grpc.Auth;
var credential = GoogleCredential.FromFile("app-services.json");
var createSettings = new PublisherClient.ClientCreationSettings(
credentials: credential.ToChannelCredentials());
var publisher = await PublisherClient.CreateAsync(topicName,
clientCreationSettings: createSettings);
发布于 2018-10-04 14:37:31
创建不带环境变量的PublisherServiceApiClient:
var credential = GoogleCredential.FromJson(@"{""your_credentials_json_itself"":""here""}");
var channel = new Grpc.Core.Channel(PublisherServiceApiClient.DefaultEndpoint.ToString(), credential.ToChannelCredentials());
var publisher = PublisherServiceApiClient.Create(channel);
发布于 2018-08-13 07:41:24
在这里查看“在代码中传递服务帐户密钥的路径”(对于.NET):https://cloud.google.com/docs/authentication/production#obtaining_and_providing_service_account_credentials_manually
https://stackoverflow.com/questions/51801386
复制相似问题