什么是跨域?
1、域名不同。
2、域名相同,端口不同。
3、由于同源策略,安全性考虑设计如此。
ajax跨域问题:由js请求处于跨域范围的数据,请求不到。
问题解决:jsonp解决。
什么是jsonp?
它是一个跨域解决方案。js跨域请求数据不可以,但js跨域请求js脚本是可以的。这是个bug,巧妙利用这个bug可以把数据封装成一个js语句,跨域请求js脚本可以得到此脚本。可以把数据作为参数传递到被请求的方法中,就可以获得数据。
jsonp的原理:
jsonp实现的示例://todo:待补充
请求方ajax代码:
被请求方js代码:
其中的json数据为:
总结:
越来越认识到:图有助于理解,一张图胜过千言万语。多画图,多总结。