vue-qqmusic icon indicating copy to clipboard operation
vue-qqmusic copied to clipboard

怎么解决跨域问题呢?

Open yangyiru opened this issue 7 years ago • 1 comments

yangyiru avatar Sep 28 '17 07:09 yangyiru

1:通过JSONP来解决跨域问题,不过这个需要对方服务器做相应的处理。 例如: function jsonp(urlObj, callback) { let url = urlObj.url, callbackName = urlObj.jsonpCallback;

window[callbackName] = function(data) {
    window[callbackName] = undefined;
    document.body.removeChild(script);
    callback(data);
};

let script = document.createElement('script');
script.src = url;
document.body.appendChild(script);

}

2:常用强力解决办法,打开你的webpack devserver 通过这个进行代理配置 例如: devServer: { headers: { "Access-Control-Allow-Origin": "*", "Access-Control-Allow-Methods": "GET, POST, PUT, DELETE, PATCH, OPTIONS", "Access-Control-Allow-Headers": "X-Requested-With, content-type, Authorization" }, proxy: { '/OAAccount': { target: REMOTE_URL, secure: false, changeOrigin: true } } } 详情请参考webpack devserver 文档 https://webpack.js.org/configuration/dev-server/#devserver-proxy

3: 最简单的方法, 服务端将cross-origin:*这样设置一下即可,需服务端主动配置

Panda-Hope avatar Sep 28 '17 07:09 Panda-Hope