我想从支持 REST API 的远程服务器获取一些数据。我正在使用 axios 和 web-dev-server。我的前端正在发送请求,我同时使用了 firefox 和 chrome 打开我的前端。但是,每次我尝试提出请求时,都会遇到 cors 错误。此外,我不想在我的服务器上进行任何更改。Firefox 和 chrome 正在发送此标头。
接受:*/* 接受编码:gzip,放气 接受语言:en-US,en;q=0.5 连接:保持活动 主机:my.ip.to.host:port 来源:http://localhost:3000 引用者:http://localhost:3000/login 用户代理:Mozilla/5.0 (X11; Ubuntu; Linu…) Gecko/20100101 Firefox/67.0
我试图在没有 web-dev-server 的在线平台上运行我的简单请求代码,并且运行得非常好。
这是我的代码
//********** 我的请求*********
返回 axios
.get(' http://my.ip.to.host:port/api/User/login ', {
标题:{
接受:' / '
}
})
.then(函数(响应){
控制台日志(响应);
返回“用户”;
})
.catch(函数(错误){
控制台日志(错误);
返回“错误”;
});
//**********************************
//*****webpack.config.js********
var HtmlWebpackPlugin = require('html-webpack-plugin');
需要('babel-polyfill');
module.exports = {
模式:'发展',
条目:['babel-polyfill','./src'],
解决: {
扩展名:['.js', '.jsx']
},
module: {
规则:[
{
测试:/.jsx?$/,
加载器:'babel-loader'
}
]
},
插件:[
新的 HtmlWebpackPlugin({
模板:'./src/index.html'
})
],
开发服务器:{
historyApiFallback: true,
端口:3000
},
外部:{
// 全局应用配置对象
配置:JSON.stringify({
apiUrl: ' http://localhost:4000 ',
checkLogin: ' http://my.ip.to.host:port/api/User/login '
})
}
};
这是我得到的错误。
跨域请求被阻止:同源策略不允许在 http://my.ip.to.host:port/api/User/login 读取远程资源。(原因:缺少 CORS 标头“Access-Control-Allow-Origin”)。`在此处输入代码`