Coo*_*t75 5 .net c# salesforce publish-subscribe grpc
我想订阅 Salesforce 平台活动。我正在尝试在 C#/.NET 中为 Salesforce Pub/Sub API 创建客户端。有其他语言的示例,但 .NET 中没有: https: //github.com/developerforce/pub-sub-api
我正在使用 Grpc.Net.Client nuget 包。
var topicName = "/event/SomeEvent__e";
var pubSubEndpoint = "https://api.pubsub.salesforce.com:7443";
var accessToken = "xxxx";
var organisationId = "xxxx";
var instanceUrl = "https://xxxxx.sandbox.my.salesforce.com";
var credentials = CallCredentials.FromInterceptor((c, m) =>
{
m.Add("accesstoken", accessToken);
m.Add("instanceurl", instanceUrl);
m.Add("tenantid", organisationId);
return Task.CompletedTask;
});
var options = new GrpcChannelOptions
{
Credentials = ChannelCredentials.Create(new SslCredentials(), credentials)
};
var channel = GrpcChannel.ForAddress(pubSubEndpoint, options);
var client = new PubSub.PubSubClient(channel);
var topicRequest = new TopicRequest()
{
TopicName = topicName
};
var topic = client.GetTopic(topicRequest);
Run Code Online (Sandbox Code Playgroud)
我知道我的凭据是正确的,因为我可以使用邮递员访问 oauth2 端点并获取有效的访问令牌。但是当我尝试调用 client.GetTopic 这样的客户端方法时,我收到以下错误。
Status(StatusCode="PermissionDenied", Detail="获取组织 CORE/prod/00DN0000000c8Hk 和主题 /event/SomeEvent__e 的元数据时发生错误。确保凭据和主题名称正确。rpcId: 21d854fb-17dc-4778-9524 -6264bd1a920d")
我是否设置了凭据对象错误?我找不到在 .NET 中订阅 Salesforce Pub/Sub 的任何示例。