Jsonp原理:
咱們先看看POST的數(shù)據(jù)發(fā)送位置:
GET的數(shù)據(jù)發(fā)送位置:
那什么情況下會發(fā)生跨域呢?
當本機請求服務(wù)器上數(shù)據(jù)的時候:會發(fā)生跨域;
當本地服務(wù)器請求其他服務(wù)器數(shù)據(jù)的時候回發(fā)生跨域;
為什么要跨域呢?
同源策略:基于瀏覽器的安全考慮,瀏覽器各個廠商之間出現(xiàn)了一個約定,這個約定叫做同源策略。這個約定的主要內(nèi)容就是,域和域之間數(shù)據(jù)不共通。
跨域的用途是什么?
當網(wǎng)站發(fā)展壯大到一定地步的時候,會建立很多的節(jié)點,各個節(jié)點的IP是不同的,所以跨域問題就會出現(xiàn)。
當測試階段數(shù)據(jù)和本機的IP不通用的時候,那么跨域問題也會發(fā)生。
為什么要跨域?
因為要獲得其他域中的數(shù)據(jù);
JSONP解決跨域的原理。
JSONP。
JSONP是什么那?
說到JSONP不得不說一說程序員了:
JSONP是偉大程序員與安全策略的斗爭中發(fā)明的;
JSONP就是在URL中調(diào)用function;
function handle(res){
alert(res.city+":"+res.region_name+":"+res.ip)
}
var script=document.createElement('script');
script.src='http://freegeoip.net/json/?callback=handle'
window.onload=function(){
body.appendchild(script)
}