jsonp 是写 script 标签,只能满足 get 请求。跨域 post 的话,IE8 及以上和其他主流浏览器可以用 window.postMessage 来实现,也就是传说中的 HTML5 方法了,可以看下标准,代码很简单。IE6、7 就用老式的方法,隐藏的 form,target 指向一个隐藏的 iframe,然后调 form 的 submit,服务端返回的结果会刷到 iframe 里。
不过这两种方法一般都需要服务端做一定的配合,要是不能操作接口所在的服务器(比如调第三方的接口),那就只能在自己的服务端上做代理了。