2015-11-12 125 views
0

我有一些问题从我的cordova项目使用JavaScript调用我的web api服务。如果我从波纹运行相同的应用程序,它可以正常工作。但是,当我使用Visual Studio Android模拟器时,我得到错误加载资源失败:net :: ERR_CONNECTION_REFUSED,我使用fiddler来检查,我注意到它没有得到服务。无法加载资源:net :: ERR_CONNECTION_REFUSED Visual Studio Android模拟器

我想知道我在做什么错。先谢谢你。

+0

在apache error.log中发生了什么? –

回答

0

尝试将您的服务域URL添加到页面的内容安全策略(CSP)。例如,如果您正在访问雅虎天气服务的数据,您可以在页面的CSP中添加“https://query.yahooapis.com”。 CSP只是位于页面内部的一行HTML。它看起来像这样:

<meta http-equiv="Content-Security-Policy" content="default-src 'self' 
 
data: gap: https://ssl.gstatic.com 'unsafe-eval'; style-src 'self' 'unsafe- 
 
inline'; media-src *">

添加您的服务的域名网址只是在该行https://ssl.gstatic.com后。 因此,举例来说,如果你的服务域URL是“https://query.yahooapis.com”,那么当你做,你的CSP看起来就像这样:

<meta http-equiv="Content-Security-Policy" content="default-src 'self' 
 
data: gap: https://ssl.gstatic.com https://query.yahooapis.com 'unsafe-eval'; 
 
style-src 'self' unsafe-inline'; media-src *">

通过添加服务域URL到您的CSP,您将授予此页面从该服务获取内容的权限。

+0

对不起,我迟到了。它仍然给我同样的错误。同时我的服务的URL是http://localhost/PillarSalt.Data.Services/odata/。这可能是为什么? –

+0

我也试了一件事。试图从手机的模拟器访问网址,但它不能解决。我可以从我的电脑ping通地址。 –

相关问题