CORS y aplicaciones phonegap

Hacer phonegap aplicaciones requieren cualquier CORS cambios (como la configuración de Access-Control-Allow-Origin:*) para trabajar? Tengo una API restful alojado en Heroku y se preguntaba si necesitas este encabezado en orden para que mi aplicación phonegap para llamar al servicio?

Estaba pensando en eso, porque la aplicación phonegap no es realmente alojado en un dominio, entonces CORS no es necesario y no tengo ningún dominio cruzado problemas?

Sería genial si alguien me explicara por qué esto es o no es el caso.

InformationsquelleAutor jcm | 2014-01-23

4 Kommentare

  1. 28

    PhoneGap sólo puede XHR directamente a servidores remotos y
    debe «sólo trabajo». Cruz-dominio de la política no se aplica a PhoneGap
    (para una variedad de razones, básicamente porque su aplicación es esencialmente
    se ejecuta fuera de los file://URI en el dispositivo).

    Por favor, tenga en cuenta que usted tendrá que configurar una lista blanca para tus aplicaciones
    para acceder a estos dominios externos. Por favor, consulte este enlace:

    http://docs.phonegap.com/en/1.8.0rc1/guide_whitelist_index.md.html#Domain%20Whitelist%20Guide

    • Tenga en cuenta, que dicha lista no se aplica a las cosas hechas a través de la inAppBrowser-Plugin. Las listas blancas sólo funcionará en el principal Cordova webview!
    • Me pregunto por qué esta respuesta, dice que «los Scripts que se ejecutan a través de file:// tiene soporte limitado para CORS’, si XHR al servidor remoto debe «sólo trabajo».
    • Gracias a este post, aquí está mi conclusión para compartir. Es «sólo el trabajo» de verdad. Pero si CORS está habilitado en el servidor, no va a funcionar, porque no se puede establecer el «file://» como un permitió origen.
  2. 5

    Ninguno de los predeterminada Cordova (PhoneGap) plataformas requieren CORS, a pesar del hecho de que el código HTML de archivos están alojados localmente (file://) y que accede a una web de dominio.

    Sin embargo, en iOS, si cambia de la UIWebView a los nuevos WKWebView a través de córdoba-plugin-wkwebview-motor, sí va a tener para implementar CORS.

    • Tenga en cuenta que el «navegador» de la plataforma no requieren CORS. No estoy seguro si hay otros que hacen.
    • A diferencia de las otras plataformas, browser no está atada a ningún particular vista de la web, por lo que sólo depende del navegador web que usted elija para su uso. Suponiendo que estamos hablando de desarrollo, es trivial para deshabilitar el Origen Mismo de la Política en Chrome con el --disable-web-security bandera y de evitar la ejecución de CORS.
    • Es este, «Ninguno de los predeterminada Cordova (PhoneGap) plataformas requieren CORS» aún válida en agosto de 2018? Durante nuestra integración con el cliente de inicio de SESIÓN de la aplicación móvil, se presenta un plan 401 y los detalles del espectáculo «CORS» error. Del equipo del servidor dice de ellos que son de habilitar CORS en su puerta de entrada, pero creo que el origen de «file://» es la raíz de la causa. AYUDA 🙁
    • Como yo sé que esto es cierto. En cualquier caso, su mejor apuesta es para publicar una nueva pregunta que indica la plataforma e incluyendo la solicitud completa y los encabezados de respuesta.
    • córdoba plugin agregar córdoba-plugin-wkwebview-archivo-xhr
  3. 2

    Sí tienes Que activar CORS en que el servidor que aloja su API.
    Estoy ejecutando una Aplicación de Phonegap en iOs. Mi app peticiones json desde un servidor de la API de Apache.
    Puedo activar CORS en el servidor para obtener los datos de otra manera me sale nada en mi aplicación, no hay error y no hay datos.

    Observe que el parámetro de acceso en el archivo de configuración que permite filtrar el dominio que su aplicación está autorizada para consulta, pero no hace nada con los permisos del servidor.

    • es esta una respuesta? o una pregunta?.. usted necesita para limpiar su respuesta de forma que responda a la pregunta. Su respuesta está marcado porque no está claro

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea