鍍金池/ 問答/HTML/ axios如何解決線上跨域問題

axios如何解決線上跨域問題

由于sever端是別人的,所以只能在前端處理跨域請求

axios如何處理跨域問題,我在proxyTable里面的配置只在本地起作用的

線上環(huán)境又出現(xiàn)跨域問題了

回答
編輯回答
菊外人

CORS(Cross-Origin Resource Sharing, 跨源資源共享) HTTP訪問控制技術(shù),不過有兼容性問題。

2017年3月30日 04:24
編輯回答
不討喜

快速直接的使用 nginx 代理

2017年5月30日 00:28
編輯回答
扯機(jī)薄

暫且用 JsonBird 解決了,不過有一定的延遲,目前暫時沒有找到更好的辦法

2017年10月29日 00:28
編輯回答
心夠野

求大佬們輕噴,我們前后端分離的項目,跑在一個Express服務(wù)中的,代碼如下,代理用的這個中間件,http-proxy-middleware。
`var express = require('express');
var proxyMiddleware = require('http-proxy-middleware');
var apiHost = 'http://172.16.0.249:8181';
var proxyTable = {
'/v1': {

target: apiHost,
changeOrigin: true,

},
'/preview': {

target: apiHost,
changeOrigin: true,

},
'/download': {

target: apiHost,
changeOrigin: true,

}
};

var app = express();
var port = 4000;
Object.keys(proxyTable).forEach(function (context) {
var options = proxyTable[context];
if (typeof options === 'string') {

options = { target: options }

}
app.use(proxyMiddleware(options.filter || context, options))
});
app.use(require('connect-history-api-fallback')());
app.use(express.static('./dist'));
var uri = 'http://localhost:' + port;

var _resolve;
var readyPromise = new Promise(function (resolve) {
_resolve = resolve;
});

console.log('> Starting prod server...' + uri);

var server = app.listen(port);

module.exports = {

ready: readyPromise,
close: function() {
  server.close()
}

};`

2018年2月8日 01:14
編輯回答
焚音

線上跨域 前端解決不了的 CORS 或者nginx代理 或者接口開發(fā)

2017年12月19日 06:42
編輯回答
青黛色

給你個鏈接吧 , 這個問題已經(jīng)激烈回答過了
https://segmentfault.com/q/10...

2018年2月6日 13:54
編輯回答
執(zhí)念

這種情況下貌似只能反向代理了吧

2017年1月18日 04:29