在浏览器里面域名、端口、ip地址、协议,有任何一项不同,则跨域。
A网站:http://localhost:8080/#/
B网站:http://localhost:3000/#/
对于端口和协议的不同,只能通过后台来解决。我们前端要解决的是域名不同的问题。
处理跨域的方式?
JsonP(只能处理get请求)、cors(后端开启)、代理服务器,作为前端开发,掌握代理服务器方法即可。拿vue项目举例:
1、在根目录下新建vue.config.js文件,代码如下
module.exports = {
devServer: {
host: 'localhost',
port: 8080,
proxy: {
'/api': {
target: 'https://xxxxxxx.com/', // 要跨域的域名