2013-02-25 6 views
6

Tentativo di utilizzare l'emulatore di ondulazione per testare un'applicazione PhoneGap. Stiamo facendo richieste al server e di ricezione:PhoneGap/Cordova, Emulatore di ondulazione, CORS e JSONP

ERRORE:

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

  • a) CORS è abilitato sul server e il client
  • b) Le richieste di lavoro nel browser
  • c) Le richieste funzionano sul dispositivo mobile
  • d) Ho attivato l'opzione "Consenti l'accesso agli URL dei file" nelle impostazioni per Ripple Chrome Extension.
  • e) ho lanciato Chrome con le bandiere:

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

fa Ripple Emulator CORS supporto HttpRequest o solo JSONP?

Se supporta una chiamata proveniente da più di un semplice JSONP, potrei utilizzare l'assistenza per l'implementazione.

Grazie!

risposta

8

Ripple Emulator supporta CORS httprequest ma è necessario ospitare la pagina html come sito Web sul computer e accedervi utilizzando http://localhost/yourvirtualdir/yourfile.html.

+0

Grazie @ Whizkid747 - hai ragione. Ho configurato un host virtuale e l'ho effettuato tramite l'host virtuale locale e ora effettua la richiesta. –

1

Invece di impostare una directory virtuale o una voce IIS, utilizzare il web server di sviluppo integrato di PHP. Funziona in ambienti Windows e Linux.

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

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

Ora è possibile aprire il browser e passare alla http://localhost:8000 e il vostro sito \ app sarà servito. Quindi puoi abilitare Ripple su quell'URL.