很多开发人员在使用 jquery 在前端和服务器端进行数据交互,所以很容易会认为在前端利用 jquery 就可以读取任何站
点的数据了。近日在进行开 发时,因为要和第三方公司的一个项目进行数据的共享,因为考虑多不占用服务器的资源,
遂决定直接在 html 进行数据的读取,不走服务器端进行中转了。然后 正好就遇到了浏览器端跨域访问的问题。
跨域的安全限制都是指浏览器端来说的,服务器端不存在跨域安全限制的问题。
目前浏览器端跨域访问常用的两种方法有两种:
1、通过 jQuery 的 ajax 进行跨域,这其实是采用的 jsonp 的方式来实现的。
jsonp 是英文 json with padding 的缩写。它允许在服务器端生成 script tags 至返回至客户端,也就是动态生成 javascript
标签,通过 javascript callback 的形式实现数据读取。
服务器端代码,是重点,开始以为,只要客户端通过 jsonp 就可以直接跨域访问,其实不然,需要服务器端的支持才行。
代码如下: