前端笔记一:关于前端解决跨域问题
问题出现:
最近在实习公司的一个项目,后台还在数据设计阶段,根据原型图写出静态页面(要求使用jq的一个框架写页面),闲来没事,想到mock.js
可以模拟数据,于是自己模拟了一些假数据,准备做加载显示,发现了关于跨域的问题。以前关于跨域有过一定的了解知道大概的jsonp
,这次又碰见了,想着整理一下自己遇到的跨域的解决方法。
关于跨域
同源策略
请求的url地址,必须与浏览器上的url地址处于同域上,也就是域名,端口,协议相同.
为了安全考虑,浏览器是不允许跨域的
http://localhost:63342/MDM/static/menu/menu.html
|
V
http://localhost:8888/getPharmacology
浏览器会报错:如下
解决方式(碰到过的)
请求的是静态页面:
被请求的页面中添加以下代码
<meta http-equiv="Access-Control-Allow-Origin" content="*" />
请求的json数据:
jq通过 jsonp:
$.ajax({
url: "http://localhost:8888/getPharmacology",
type: "GET", //get请求方式,只支持get