我使用 koa 代理几个第三方的接口,有几个都成功了,但是有一个死活就是返回 403 Invalid CORS request,浏览器没有跨域的错误,求大佬指导以下,下面是我的代码:
const Koa = require('koa');
const {createProxyMiddleware} = require('http-proxy-middleware');
const app = new Koa();
const cors = require('koa2-cors'); // 解决本地端口不一致的跨域
app.use(cors({
credentials: true,
origin: 'http://127.0.0.1:8080',
maxAge: 2592000,
allowHeaders: '*'
}));
app.use(async (ctx, next) => {
if (ctx.url.startsWith('/config')) {
ctx.respond = false;
ctx.body = createProxyMiddleware({
target: 'https://pc-api.yun.cn',
changeOrigin: true,
secure: false,
pathRewrite: {
"^/config": ""
},
cookieDomainRewrite: {
'.yun.cn': '127.0.0.1',
}
})(ctx.req, ctx.res, next)
})
/* 代理配置 end */
const hostName = '127.0.0.1'; //本地 IP
const port = 5000; //端口
app.listen(port, hostName, () => {
console.log(`服务运行在 http://${hostName}:${port}`);
});
// 前端
const service = axios.create({
timeout: 5000,
withCredentials: true
})
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.