我使用node.js google api(npm gcloud package)来创建一个新项目。这是一个测试版API。 我收到错误:"来电者没有得到许可" 堆栈:
ApiError:来电者没有权限 at new util.ApiError(C:\ app \ bundle \ a2 \ node_modules \ gcloud \ lib \ common \ util.js:92:10) at Object.parseHttpRespBody(C:\ app \ bundle \ a2 \ node_modules \ gcloud \ lib \ common \ util.js:170:30) at Object.handleResp(C:\ app \ bundle \ a2 \ node_modules \ gcloud \ lib \ common \ util.js:110:18) 在C:\ app \ bundle \ a2 \ node_modules \ gcloud \ lib \ common \ util.js:422:12 在Request.onResponse [as _callback](C:\ app \ bundle \ a2 \ node_modules \ gcloud \ node_modules \ retry-request \ index.js:117:7) 在Request.init.self.callback(C:\ app \ bundle \ a2 \ node_modules \ gcloud \ node_modules \ request \ request.js:199:22) 在Request.emit(events.js:110:17) 在请求。 (C:\应用\束\ A2 \ node_modules \ gcloud \ node_modules \请求\ request.js:1036:10) 在Request.emit(events.js:129:20) 在IncomingMessage。 (C:\应用\束\ A2 \ node_modules \ gcloud \ node_modules \请求\ request.js:963:12)
我已启用" Google Cloud Resource Manager API"。 其他通话工作正常。 可能是什么问题?
答案 0 :(得分:3)
Cloud Resource Manager的projects.create
方法仅限邀请per their documentation:
projects.create()方法处于Alpha阶段。它可能以向后不兼容的方式更改,不建议用于生产。它不受任何SLA或弃用政策的约束。目前仅限邀请访问此功能。如需邀请,请联系我们的销售团队。
答案 1 :(得分:1)
对于该方法,您必须自己进行身份验证,即服务帐户JSON文件在此处不起作用。我知道的唯一方法是安装gcloud SDK(https://cloud.google.com/sdk)并运行gcloud auth login
。实例化gcloud时,请不要提供任何凭据,只提供项目ID:
var gcloud = require('gcloud');
var resource = gcloud.resource({ projectId: 'grape-spaceship-123' });
// Now this should work:
resource.createProject('grape-spaceship-124', function(err, project) {});
相关材料: