PhoneGap/Cordova、波纹仿真器、CORS 和 JSONP

Posted

技术标签:

【中文标题】PhoneGap/Cordova、波纹仿真器、CORS 和 JSONP【英文标题】:PhoneGap/Cordova, Ripple Emulator, CORS & JSONP 【发布时间】:2013-02-11 04:35:53 【问题描述】:

尝试使用 Ripple Emulator 测试 PhoneGap 应用程序。我们正在向服务器发出请求并接收:

错误:

cordova :: XMLHttpRequest :: setRequestHeader 不适用于 JSONP。

a) 在服务器和客户端上启用了 CORS b) 请求在浏览器中运行 c) 请求在移动设备上运行 d) 我在 Ripple Chrome 扩展的设置中启用了“允许访问文件 URL”。 e) 我启动了带有标志的 chrome:

--disable-web-security --allow-file-access-from-files

Ripple Emulator 支持 CORS httprequest 还是仅支持 jsonp?

如果它不仅支持来自 JSONP 的调用,那么我可以在实现方面使用一些帮助。

谢谢!

【问题讨论】:

【参考方案1】:

不要设置虚拟目录或 IIS 条目,而是使用 php 的内置开发 Web 服务器。这适用于 Windows 和 Linux 环境。

http://php.net/manual/en/features.commandline.webserver.php

$ cd ~/public_html
$ php -S localhost:8000

现在您可以打开浏览器并导航到http://localhost:8000,然后您的网站\应用程序将被提供。然后您可以在该 URL 上启用 Ripple。

【讨论】:

【参考方案2】:

Ripple Emulator 确实支持 CORS httprequest,但您需要将 html 页面作为网站托管在您的机器上,并使用 http://localhost/yourvirtualdir/yourfile.html 访问它。

【讨论】:

感谢@Whizkid747 - 你是对的。我设置了一个虚拟主机并通过该本地虚拟主机访问它,它现在发出请求。

以上是关于PhoneGap/Cordova、波纹仿真器、CORS 和 JSONP的主要内容,如果未能解决你的问题,请参考以下文章

基于等波纹最佳逼近法的FIR数字滤波器实现matlab仿真

使用 phonegap / cordova 更改设备配置文件

Phonegap / Cordova 改变个别声音的音量?

Phonegap/Cordova 中的本地通知

基于 Swift 项目的 PhoneGap/Cordova App

PhoneGap/Cordova 设备未准备好