我正在尝试使用REST API和服务器应用程序的公共api密钥列出Compute Engine项目中的所有实例。尝试使用和不使用授权标头,但继续得到响应401:
APIKEY="API KEY"
PROJECT="PROJECT ID"
curl https://www.googleapis.com/compute/v1/projects/$PROJECT/aggregated/instances?key=$APIKEY
curl -H "Authorization: key=$APIKEY" https://www.googleapis.com/compute/v1/projects/$PROJECT/aggregated/instances?key=$APIKEY
我在创建api密钥时允许连接任何IP。我错过了什么?
答案 0 :(得分:2)
只有当您使用的API不需要访问私人用户数据时,才能使用API ke y。在您尝试使用的instances:list API的Google文档中,您可以阅读链接' read more about authentication and authorization'您可以在其中发现向Google Compute Engine发出的请求必须使用OAuth 2.0来获取授权请求。这是尝试卷曲此链接的原因,您会收到错误消息,说明需要登录' 401需要登录'。 因此,您需要先创建OAuth流以进行身份验证。