@RequestMapping(value = "^(?!webjars$|actuator$).*", method = RequestMethod.GET)
我有一个客户端应用程序重定向到GitHub oAuth URL。 Github授权url重定向到我应该做的服务器。它正在传递所需的信息。上面的代码是我的服务器端代码。此代码正在对github api进行后期调用以检索访问令牌,但我没有收到JSON响应。这是我得到的答复。
require('dotenv').config();
const express = require('express');
const morgan = require('morgan');
const cors = require('cors');
const helmet = require('helmet');
const fetch = require("node-fetch");
const NODE_ENV = process.env.NODE_ENV
const app = express()
const morganOption = (NODE_ENV === 'production')
? 'tiny'
: 'common';
app.use(morgan(morganOption))
app.use(helmet())
app.use(cors())
app.use(function errorHandler(error, req, res, next){
let response
if (NODE_ENV === 'production'){
response = { error: { message: 'server error' } }
} else {
console.error(error)
response = { message: error.message, error }
}
res.status(500).json(response)
})
app.get('/', (req, res) => {
const code = req.query.code;
const state = req.query.state;
const url = `https://github.com/login/oauth/access_token`;
const options = {
method: "POST",
headers: {
"Accept": "application/json"
},
parameters: {
"client_secret": process.env.CLIENT_SECRET,
"client_id": process.env.CLIENT_ID,
"state": state,
"code": code
}
}
fetch(url, options).then(res => console.log(res))
res.send('verifying account please wait!')
})
当我使用邮递员进行邮递时,我会取回访问令牌。当我直接将URL输入浏览器时,它将下载带有访问令牌的文件。那么为什么API调用在这里失败?