2013-02-25 22 views
6

Cố gắng sử dụng Trình giả lập Ripple để kiểm tra ứng dụng PhoneGap. Chúng tôi đang tạo yêu cầu đến máy chủ và nhận:PhoneGap/Cordova, Trình giả lập Ripple, CORS & JSONP

LỖI:

cordova :: XMLHttpRequest :: setRequestHeader does not work with JSONP.

  • a) CORS được kích hoạt trên máy chủ và máy khách
  • b) Các yêu cầu làm việc trong trình duyệt
  • c) Yêu cầu hoạt động trên thiết bị di động
  • d) Tôi đã bật "Cho phép truy cập vào URL của tệp" trong cài đặt cho Tiện ích mở rộng của Ripple Chrome.
  • e) Tôi đưa ra chrome với những lá cờ:

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

Liệu Ripple Emulator hỗ trợ CORS HttpRequest hoặc chỉ JSONP?

Nếu nó hỗ trợ cuộc gọi từ nhiều hơn chỉ JSONP thì tôi có thể sử dụng một số trợ giúp khi triển khai.

Cảm ơn bạn!

Trả lời

8

Trình mô phỏng Ripple hỗ trợ CORS httprequest nhưng bạn cần lưu trữ trang html của bạn dưới dạng trang web trên máy của bạn và truy cập trang đó bằng cách sử dụng http://localhost/yourvirtualdir/yourfile.html.

+0

Cảm ơn @ Whizkid747 - bạn nói đúng. Tôi thiết lập một máy chủ ảo và truy cập nó thông qua máy chủ ảo cục bộ đó và bây giờ nó đưa ra yêu cầu. –

1

Thay vì thiết lập thư mục ảo hoặc mục nhập IIS, hãy sử dụng máy chủ web phát triển tích hợp của PHP. Điều này hoạt động trong môi trường Windows và Linux.

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

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

Bây giờ bạn có thể mở trình duyệt của bạn và điều hướng đến http://localhost:8000 và trang web của bạn \ ứng dụng sẽ được phục vụ. Sau đó, bạn có thể bật Ripple trên URL đó.