【发布时间】:2014-01-08 18:58:36
【问题描述】:
我有一个调用 AdWords API 的 Python 服务器端应用程序。由于不推荐使用 ClientLogin,因此我将不得不使用 OAuth 2.0。 基本上我需要生成一个访问令牌,但我不希望任何用户交互(允许访问应用程序),因为我总是在服务器上使用相同的用户名和密码,我想使用那个用户名和密码进行 AdWords API 调用。
我相信正确的方法是通过grant_type 'password' oauth2 调用https://accounts.google.com/o/oauth2/token。 这就是我从 OAuth2.0 RFC (https://www.rfc-editor.org/rfc/rfc6749#page-38) 中了解到的。 RFC 规定请求/查询字符串必须包含 3 个参数:grant_type(设置为“密码”)、用户名和密码。
所以我构建了我的 curl 脚本,如下所示:
curl -v --data "grant_type=password&username=user@gmail.com&password=password" https://accounts.google.com/o/oauth2/token
但是我启动了命令,然后我得到了来自 google 的响应:
{"error" : "invalid_request"}
我错过了什么吗?是否有一个简单的 python 库支持 grant_type=password 并且有足够好的文档?
【问题讨论】:
标签: python authentication oauth-2.0 google-ads-api google-authentication