axios ,跨域传输headers
在跨域请求中,浏览器的同源策略将限制某些类型的请求,或者在发送请求时不会包含某些 headers。然而,通过设置 CORS (Cross-Origin Resource Sharing) 策略,服务器可以允许来自其他源的请求,并允许这些请求包含额外的 headers。
假设你已经正确配置了服务器以支持 CORS,并且允许特定 headers,那么你可以在 axios 请求中添加这些 headers:
axios.get(url, {
headers: {
'Header-Key': 'Header Value',
},
withCredentials: true
})
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
其中,withCredentials: true
选项表示在跨域请求中应携带 cookies。
请注意,要使此设置有效,服务器必须在响应中包含 Access-Control-Allow-Origin
和 Access-Control-Allow-Headers
(包含你希望添加的 header 名称)。
如果你无法更改服务器端的配置,可能需要使用代理服务器来绕过这些限制,或者使用 JSONP(只适用于 GET 请求)、WebSockets 或其他方法,但这可能涉及对应用架构的重大更改。