其实写过jsonp相关api或者了解jsonp原理的同学其实都知道其实作为跨域的一种比较好的方式,其实还是有很多“缺陷@H_502_2@”的。
比如:
兼容性相关@H_502_2@:
关于
如何判断浏览器是否支持script的onerror@H_502_2@,可以查看司徒正美的
http://www.cnblogs.com/rubylouvre/archive/2011/02/12/1952160.html
同样很多人和我一样会问,那我们想做到兼容基本所有浏览器的异常处理咋办呢?
-------- 先介绍一下从司徒那边看到的一个方案:
JSONP的
回调函数总是在script的onload事件(IE的onreadystatechange)之前就被调用@H_502_2@,因此在回调执行之时,为script标签增加一个属性,然后等到onload发生的时候,检查有没有这个属性,来以此判定是否请求成功