js跨域问题

1.关于跨域

是指域名、协议、端口中任意一个不相同的即存在跨域问题。请求能正常发出去,服务器能接受请求并返回结果,但是结果被浏览器拦截了

2.解决跨域

2.1jsonp(非同源请求)

<script>标签加载json数据,但是需要服务器做支持

优点:没有跨域限制

缺点:容易受到xss攻击

2.2ajax(同源请求)

jq方式

$.ajax({
    type:'get',
    async:true,
    dataType:'jsonp',
    jsonp:'',
    url:'',
    success:function(data){},
    fail:function(error){console.log(error)}
})

2.3cors

fetch(get_insert_xpath, {
		method: 'post',
		mode: 'cors',
		headers: {
			'Access-Control-Allow-Origin': '*',
			'Access-Control-Allow-Headers': '*',
			'Content-Type': 'application/json',
		},
		body: JSON.stringify({
			name: "name",
		}),
	})
		.then(
			res => res.json(),
			fail => console.log('error', fail)
		)
		.then(data => {
			console.log(data)
		});

3.后端本地项目未发布到服务器时,如果前端需要调用接口也会显示cors跨域

此时需要修改本地dns处理跨域

js跨域问题

添加

# 后端ipv4地址 项目名

 

上一篇:elasticsearch 配置账号


下一篇:SpringBoot添加支持CORS跨域访问