我使用这里的api示例。
运行gcloud config list
显示我的默认项目为project = multichoice-insights
代码的重要摘录显示我获得了默认凭证:
credentials = GoogleCredentials.get_application_default().create_scoped(
['https://www.googleapis.com/auth/cloud-platform'],
)
然而,当我尝试使用api时,我得到错误消息:
googleapiclient.errors.HttpError: <HttpError 403 when requesting
https://language.googleapis.com/v1beta1/documents:analyzeSentiment?
alt=json returned "Google Cloud Natural Language API has not been used
in project google.com:cloudsdktool before or it is disabled. Enable it
by visiting
https://console.developers.google.com/apis/api/language.googleapis.com/over
view?project=google.com:cloudsdktool then retry. If you enabled this
API recently, wait a few minutes for the action to propagate to our
systems and retry.">
我认为这表明项目使用:project=google.com:cloudsdktool
如何将其更改为project-name
?
我已经在控制台中启用了这个api
有此问题的人:
需要设置他们的环境变量。如果您使用的是virtualenvs,请按如下方式设置该变量。
在文件:.virtualenvs/env_name/bin
中编辑文件activate以包含以下行:
GOOGLE_APPLICATION_CREDENTIALS=/abs/path/to/credentials.json
这个凭证。Json从API页面下载。完整的指令可以从这里收集