1 Pregunta: Cómo agregar el encabezado de referencia faltante a la aplicación Cordova IOS

pregunta creada en Wed, May 8, 2019 12:00 AM

Estoy usando Cordova para construir una aplicación iOS. Utilizo el motor iónico , lo que significa que la aplicación se sirve desde un servidor web ejecutándose en el dispositivo.

Mi window.location.origin es "ionic: //my-app.com".

Una API de terceros (que necesito usar para obtener una sugerencia de dirección basada en lo que el usuario escribe) rechaza mis solicitudes HTTP porque falta el encabezado referrer en la solicitud.

No es posible agregar mediante programación una referencia desde la capa JS y estos no funcionaron:

  • <meta name="referrer" content="origin">

  • <meta name="referrer" content="always">

Sospecho que el problema es que la API utiliza https y mi aplicación iOS usa un esquema personalizado (el predeterminado es ionic:// y no se puede cambiar a https). Por esta razón, el encabezado de referencia no es agregado por WebView.

¿Cómo puedo resolver este problema?

    
0
  1. Se otorgará una recompensa de 50 a cualquiera que ayude a resolver esto.
    2019-05-08 16: 14: 51Z
  2. ¿Es solo esa API que restringe su acceso debido a una referencia faltante? Es posible que no esté lo suficientemente desesperado en este momento, pero el enrutamiento de su solicitud a través de un servidor que usted controla para reenviar la solicitud funcionará.
    2019-05-08 19: 02: 24Z
  3. Sí, ese es mi último recurso. Es la única API que actualmente restringe el acceso debido a la referencia faltante. :(
    2019-05-09 06: 09: 23Z
  4. Si controla la API de terceros, puede enviar encabezados personalizados.
    2019-05-09 06: 55: 39Z
  5. No controlo la API de terceros
    2019-05-09 16: 56: 23Z
1 Respuestas                              1                         

Intentaría seguir la solución alternativa de CORS para aplicaciones nativas que usan el complemento HTTP de ionic. Vea aquí para más detalles: https://ionicframework.com/docs/faq /cors # 1-native-only-apps-ios-android-

    
0
2019-05-09 07: 23: 53Z
  1. Estamos usando Cordova, no Ionic. Utilizamos el plugin cordova-plugin-ionic-webview para usar el motor Ionic y obtener un mejor rendimiento.
    2019-05-09 16: 55: 44Z
fuente colocada aquí