1 Frage: Hinzufügen eines fehlenden Referrer-Headers zur Cordova IOS App

Frage erstellt am Wed, May 8, 2019 12:00 AM

Ich verwende Cordova zum Erstellen einer iOS-App. Ich verwende die Ionic Engine , was bedeutet, dass die App von einem Webserver bereitgestellt wird auf dem Gerät ausgeführt wird.

Meine window.location.origin lautet "ionic: //my-app.com".

Eine Drittanbieter-API (die ich verwenden muss, um einen Adressvorschlag basierend auf den Benutzertypen abzurufen) weist meine HTTP-Anforderungen zurück, da der Header referrer in der Anforderung fehlt.

Es ist nicht möglich, programmgesteuert einen Verweis aus der JS-Ebene hinzuzufügen, und diese funktionierten nicht:

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

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

Ich vermute, dass das Problem darin besteht, dass die API https verwendet und meine iOS-App ein benutzerdefiniertes Schema verwendet (das Standardschema lautet ionic:// und kann nicht in https geändert werden). Aus diesem Grund wird der Referrer-Header vom WebView nicht hinzugefügt.

Wie kann ich dieses Problem lösen?

    
0
  1. Jeder, der zur Lösung dieses Problems beiträgt, erhält eine Prämie von 50
    2019-05-08 16: 14: 51Z
  2. Beschränkt nur diese eine API Ihren Zugriff aufgrund eines fehlenden Verweises? Möglicherweise sind Sie zu diesem Zeitpunkt nicht verzweifelt genug, aber das Weiterleiten Ihrer Anfrage über einen Server, den Sie steuern, um die Anfrage weiterzuleiten, funktioniert.
    2019-05-08 19: 02: 24Z
  3. Ja, das ist mein letzter Ausweg. Es ist die einzige API, die den Zugriff derzeit aufgrund des fehlenden Referrers einschränkt. : (
    2019-05-09 06: 09: 23Z
  4. Wenn Sie die Drittanbieter-API steuern, können Sie benutzerdefinierte Header senden.
    2019-05-09 06: 55: 39Z
  5. Ich kontrolliere nicht die Drittanbieter-API
    2019-05-09 16: 56: 23Z
1 Antworten                              1                         

Ich würde versuchen, die CORS-Problemumgehung für native Apps zu befolgen, die das HTTP-Plug-in von ionic verwenden. Weitere Details finden Sie hier: https://ionicframework.com/docs/faq /cors # 1-native-only-apps-ios-android-

    
0
2019-05-09 07: 23: 53Z
  1. Wir verwenden Cordova, nicht Ionic. Wir verwenden das Cordova-Plugin-Ionic-Webview-Plugin, um die Ionic-Engine zu verwenden und Leistung zu erzielen.
    2019-05-09 16: 55: 44Z
Quelle platziert Hier