伙计们,我的 NodeJS REST API 中有一个错误,无法解决。我的想法是做一个 github 登录,这个应用程序是这样工作的:
重定向到 github,在回调中返回临时代码。
将此临时代码发送到我的 REST API 并向另一个 GitHub API 端点发出获取请求。这个请求必须返回
access_token = 12345
(这个访问令牌是一个例子),把这个令牌发送到前端,将它转换成一个JWT令牌,然后把它存储在一个localStorage中以供使用。
我在 NodeJS 中的代码
router.post("/users/github/:code",function(req,res){
fetch('https://github.com/login/oauth/access_token/', {
method: 'GET',
client_id: 'xxxx',
client_secret: 'xxxx',
code: req.params.code,
accept: 'json',
})
.then(function(res) {
return res.json();
}).then(function(json) {
console.log(json);
});
});
PS:我node-fetch
为此使用模块。https://www.npmjs.com/package/node-fetch
你的要求是错误的,正确的是这样的:
查看标题和正文部分。在POST请求中,您必须在请求的正文 (
body
)中发送数据。如果您发送 JSON,则必须将其解析为字符串(使用JSON.stringify
),此外,您必须Content-Type
在您的情况下指定要发送的信息 的名称application/json
。