[英]Bitbucket OAuth2 using Node.js
我想在我的应用程序中具有允许用户授权Bitbucket的功能。 我遵循了https://confluence.atlassian.com/bitbucket/oauth-on-bitbucket-cloud-238027431.html 。
以下步骤可以正常工作,并按预期显示Bitbucket授权屏幕: https ://bitbucket.org/site/oauth2/authorize ? client_id = {client_id}&response_type = code
但是,此部分发出有关无效授予的错误。
$ curl -X POST -u "client_id:secret" \
https://bitbucket.org/site/oauth2/access_token \
-d grant_type=authorization_code -d code={code}
我在Node.js中使用request
模块,并使用如下代码:
request.post(
'https://bitbucket.org/site/oauth2/access_token',
{
json: {
client_id: config.get('app.bitbucket_client_id'),
client_secret: config.get('app.bitbucket_client_secret'),
code: req.query.code,
grant_type: "authorization_code"
}
}, function (error, response, body) {
// Do something here
}
}
{“结果”:{“ error_description”:“不支持的授予类型:无”,“错误”:“ invalid_grant”}}
请指教!
找到了我问题的答案。 基本上,Bitbucket希望数据直接在正文中发送,而不是JSON。 从上面的代码中的json
更改为form
对我来说已经修复了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.