Error: Whitelist rejection in Phonegap

2019-01-09 08:18发布

I'm new to mobile development. I'm using Phonegap/Cordova to create a cross-platform app. My code works well on Android but when I'm porting it to iPhone it's showing an error:

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

Now can I overcome this problem?

7条回答
We Are One
2楼-- · 2019-01-09 08:40

Notice: This answer only applies for PhoneGap version 1.x and below. From version 2.x onwards, whitelist configuration is done via cordova.xml.

You have to add allowed URLs into PhoneGap.plist's (or Cordova.plist) ExternalHosts array.

For example, if you want to allow access to this URL http://www.myhost.com/path/file, then add www.myhost.com as a new entry to ExternalHosts array.

If you want to allow access to content on all the subdomain of Google (e.g. maps.google.com, mails.google.com), you can add *.google.com as a new entry to ExternalHosts array.

I am not sure why you get "abc" in the link, though. Do you have "abc" as a link to anything? Is it URI fragment?

查看更多
男人必须洒脱
3楼-- · 2019-01-09 08:40

In PhoneGap 3.0, you need to edit www/config.xml, and add/edit <access> tags. For example, if you want to allow everything, change the tag to:

<access origin="*" />
查看更多
等我变得足够好
4楼-- · 2019-01-09 08:45

You will have to Domain Whitelist so you can access outside domains such as http://google.com.

In iOS (Cordova > 3.0.0), the whitelisting rules are found in AppName/config.xml and declared with the element <access origin="..." />

You can also use wildcards to declare domains. For example, to allow access to all subdomains and TLDs (.com, .net, etc) of Google, use *.google.*

Reference: Domain Whitelist Guide

查看更多
疯言疯语
5楼-- · 2019-01-09 08:55

In PhoneGap 3.0, you need to edit config.xml in Project folder (note: not the www/config.xml)

<access origin="*" />
查看更多
我欲成王,谁敢阻挡
6楼-- · 2019-01-09 08:57

You can add this following code in Cordova.plist file:

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

With *.facebook.com as the domain name, you can use two different sub-domains.

查看更多
Lonely孤独者°
7楼-- · 2019-01-09 08:57

This is because phonegap won't take external urls .For phonegap older versions below 2.x we need to set url in cordova.plist like this.

ex:*.google.co.in(u can put your url after *. this) and OpenAllWhitelistURLsInWebView---to ---YES.

查看更多
登录 后发表回答