私はpubsubエミュレータをローカルで実行し、pubsub上で実行している既存のサービスでメッセージを送信しようとしました。メッセージは受信されず、ログには認証エラーがあります。GCloud pubsubエミュレータは "PUBSUB_EMULATOR_HOST"環境変数を尊重しません
[pubsub] Jan 22, 2017 3:43:16 PM com.google.cloud.iam.testing.v1.shared.authorization.AuthInterceptor interceptCall
[pubsub] INFO: Authentication interceptor: Header value is null
[pubsub] Jan 22, 2017 3:43:16 PM com.google.cloud.iam.testing.v1.shared.authorization.AuthInterceptor interceptCall
[pubsub] INFO: Authentication interceptor: invalid or missing token
私はdotnetとnodejの両方からパブリッシュとプルするリクエストを出しています。
C#
var creds = GoogleCredential.GetApplicationDefaultAsync().Result;
if (creds.IsCreateScopedRequired) {
creds = creds.CreateScoped(new [] { PubsubService.Scope.Pubsub });
}
return new PubsubService(
new BaseClientService.Initializer() {
HttpClientInitializer = creds,
ApplicationName = "My Wonderful App"
}
);
NodeJs
var pubsub = require('@google-cloud/pubsub');
var pubsubClient = pubsub({
projectId: config.get('GCLOUD_PROJECT')
});