我正在尝试使用 Mailchimp 的 OAuth 完成身份验证 实现,我的访问 token 请求正在获取 “无效授权”错误。
使用 ruby HTTParty gem,我将数据发布到 Mailchimp:
url = 'https://login.mailchimp.com/oauth2/token'
result = HTTParty.post(url,
body: {
grant_type: 'authorization_code',
client_id: ENV["MAILCHIMP_ID"],
client_secret: ENV["MAILCHIMP_SECRET"],
code: auth_hash.credentials.token,
redirect_uri: 'https://requestb.in/1jrbjmi1',
},
headers: {
'Accept': 'application/json'
})
地点:
- grant_type 是 'authorization_code'
- 客户端 ID 和密码是我在设置应用程序时提供给我的值 在 Mailchimp
- code 是从(成功的)OAuth 返回给我的 token 身份验证
有人遇到过这种错误吗?知道如何解决吗?
最佳答案
我今天遇到了类似的问题,我的结论如下:
不幸的是,MailChimp(以及许多其他提供 OAuth2 端点的公司)不提供额外的错误信息 -
invalid_grant
会针对许多不同的场景显示。在我的例子中,问题是由
redirect_uri
中的细微差异引起的 - 我没有在 token 请求中包含完全匹配。它是严格的,必须包含查询参数并且也必须匹配。不幸的是,包含错误的授权码会导致与上述相同的错误。
关于ruby-on-rails - Mailchimp "invalid_grant"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39148864/