Jus*_*ith 10 javascript ajax html5 json jsonp
我正在编写一个HTML5应用程序,它使用JSONP从几个不同的来源收集数据.我正在使用GET做的任何事情都能很好地完成.我现在正试图发布数据,我遇到了一个有趣的障碍.我需要将数据从我的应用程序POST到另一个应用程序从本地计算机运行.我正在尝试编写一个支持跨平台的移动应用程序(想想Pulse/Flipboard),因此代码将始终从本地源运行.我的思考过程如下:
file://,因此原始头为空.这会导致请求失败(XmlHttpRequest错误:Access-Control-Allow-Origin不允许使用Origin null)我所针对的所有浏览器都是基于webkit的(iPad,Playbook,Android),所以我想知道我可以偷偷摸摸的相同原始政策代码中是否有任何吱吱声?也许是使用iframe或postMessage的东西?
事实证明,最简单的方法是将目标网址发布到iframe内部.大多数浏览器上的同源策略允许您从一个域到另一个不相关的域执行HTTP POST.我通过向我的页面添加iframe解决了这个问题,最初设置为本地引导页面.由于该页面是从同一个域加载的,因此我可以通过脚本控制它.我用它将表单发布到我的目标站点,并轮询结果以确定我的呼叫是否成功.它不优雅,但它的工作原理.