vue跨域ashx404
Vue跨域问题可能是由于后端接口设置不正确或者浏览器安全策略导致的。在Vue项目中可以通过配置proxyTable解决跨域问题。具体步骤如下:
- 在项目根目录下找到
config文件夹,然后打开index.js文件。 - 在
dev属性中找到proxyTable,可以看到一个空对象{}。 - 在
proxyTable中添加代理配置,例如:
proxyTable: {
'/api': {
target: 'http://localhost:8080', // 后端接口的地址
changeOrigin: true,
pathRewrite: {
'^/api': ''
}
}
}
这里以/api为例,表示请求以/api开头的接口都会被代理到http://localhost:8080地址,changeOrigin表示是否改变请求头中的origin,pathRewrite表示将请求路径中的/api替换为空。
- 重启项目,然后再次发送请求,应该就能够成功跨域了。
如果以上方法还是无法解决跨域问题,可以尝试在后端接口中设置跨域头,例如在ASHX文件中添加以下代码:
context.Response.AddHeader("Access-Control-Allow-Origin", "*");
这样就允许所有域名的请求都可以跨域访问。如果需要限制跨域请求的域名,可以将*替换为具体的域名。
如果以上方法都无效,可以尝试使用axios库的jsonp方式进行跨域请求,或者在项目打包后将前端代码和后端接口部署在同一个域名下
原文地址: https://www.cveoy.top/t/topic/hQYv 著作权归作者所有。请勿转载和采集!