我有一个用于登录系统的API,但是使用axios发送请求时,它会收到CORS错误。
我试图安装CORS扩展并重新加载很多时间,但是仍然无法正常工作。
然后我尝试通过
https://cors-anywhere.herokuapp.com/
发送请求,出现错误503
(服务不可用)。
这是我的功能:
function getAccessToken (success, failure){
axios.request({
url: `${BaseConstants.REST_BASE_PATH}/rest/auth/login`,
//`https://cors-anywhere.herokuapp.com/${BaseConstants.REST_BASE_PATH}/rest/auth/login`,
method: "POST",
headers: {
Authorization: 'Basic YWRtaW51c2VyOnBhc3N3b3Jk',
'Content-type': 'application/json',
// 'Origin': '*',
'Access-Control-Allow-Headers': '*',
'Access-Control-Allow-Origin': '*',
}
}).then(r => {
success(r.data);
}.catch(r => {
failure(r.message);
});
}
答案 0 :(得分:0)
您可以按以下方式添加“ cors”软件包(express服务器),也可以在“服务器端”添加特定行以绕过CORS问题。
const express = require('express');
const path = require('path');
const bodyParser = require('body-parser');
const cors = require('cors');
const app = express();
app.use(cors());
// some route controllers
const customRoute = require('./customRoute.controller');
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
// Custom routes
app.use('/api/tags', customRoute);
app.use(express.static(path.join(__dirname, 'dist')));
// Catch all other routes & return index file
app.get('*', (req, res) => {
res.sendFile(path.join(__dirname, 'dist/index.html'));
});
module.exports = app;
OR
'Access-Control-Allow-Methods': 'GET, POST PUT, DELETE, OPTIONS'
'Access-Control-Allow-Origin': '*'
'Access-Control-Allow-Credentials': ' true'
希望这可以解决问题。 :)