54 votes

Erreur : Rejet de la liste blanche dans Phonegap

Je suis novice en matière de développement mobile. J'utilise Phonegap/Cordova pour créer une application multiplateforme. Mon code fonctionne bien sur Android mais lorsque je le porte sur iPhone, une erreur apparaît :

[143:2003] ERROR whitelist rejection: url="abc"

Comment puis-je surmonter ce problème ?

55voto

nhahtdh Points 28167

Avis : Cette réponse ne s'applique que pour PhoneGap version 1.x et inférieure. A partir de la version 2.x, la configuration de la liste blanche se fait via cordova.xml .

Vous devez ajouter les URLs autorisées dans le tableau ExternalHosts de PhoneGap.plist (ou Cordova.plist).

Par exemple, si vous voulez autoriser l'accès à cette URL http://www.myhost.com/path/file puis ajoutez www.myhost.com comme une nouvelle entrée dans ExternalHosts le tableau.

Si vous souhaitez autoriser l'accès au contenu de tous les sous-domaines de Google (par ex. maps.google.com , mails.google.com ), vous pouvez ajouter *.google.com comme une nouvelle entrée dans ExternalHosts le tableau.

Je ne sais pas pourquoi vous avez "abc" dans le lien, cependant. Est-ce que "abc" est un lien vers quelque chose ? Est-ce un fragment d'URI ?

32voto

Ivan Points 375

Dans PhoneGap 3.0, vous devez éditer config.xml dans le dossier Project (note : pas le www/config.xml).

<access origin="*" />

18voto

shawkinaw Points 1102

Dans PhoneGap 3.0, vous devez éditer www/config.xml et ajouter/modifier <access> tags. Par exemple, si vous voulez tout autoriser, changez la balise en :

<access origin="*" />

8voto

Manish Agrawal Points 168

Vous pouvez ajouter le code suivant dans le fichier Cordova.plist :

<key>ExternalHosts</key>
       <array>
               <string>*.facebook.com</string>
       </array>

Avec *.facebook.com comme nom de domaine, vous pouvez utiliser deux sous-domaines différents.

3voto

wael Points 71

Vous devrez établir une liste blanche de domaines afin de pouvoir accéder à des domaines extérieurs tels que http://google.com .

Dans iOS (Cordova > 3.0.0), les règles de mise en liste blanche se trouvent dans AppName/config.xml et déclaré avec l'élément <access origin="..." />

Vous pouvez également utiliser des caractères génériques pour déclarer des domaines. Par exemple, pour permettre l'accès à tous les sous-domaines et TLD (.com, .net, etc) de Google, utilisez *.google.*

Référence : Guide de la liste blanche de domaines

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X