跨域的概念:跨域是受到浏览器的同源策略的影响,如果协议、域名、端口号、有任何一个不一样都会产生跨域。
我常用的解决跨域的方法:1、在服务端(后端)设置一个响应头res.setHeader('Access-Control-Allow-Origin','*')这种方法就是后端设置一个响应头,不管谁请求都可以响应。
2、Jsonp方法解决跨域,这种方法的原理就是利用浏览器不会阻止src属性的跨域请求(只能是get请求):首先在script标签上写一个src属性,然后在src属性中写上请求地址跟上一个函数,这个需要服务端(后端在响应的时候):res.end('getdata()')点用这个函数
3、nginx反向代理nginx.conf.js(这种方法暂时没学会,只是知道有这种方法)
4、Vue处理跨域:需要在Vue的根目录下创建一个vue.config.js文件(注意单词不能错,因为他是默认加载文件!)然后再文件里导出一个模块化:
module.exports={
deveServer:{
proxy:{
'/api':{ (定义一个代理标志标志!)
target:"" //请求的目标地址(服务端地址)
changeOrigin:true //是否允许跨域
pathRewrite:{
"/api": "" //路径重写(一般为空)
}
}
}
}
}