我正在使用Visual Studio 2013 Update 4,並且我有一個web api項目安裝程序來接收穫取返回數組的請求。對於客戶端應用程序,我已經安裝了cordova,並且正在模擬一個使用ng-resource調用web api獲取的android角度應用程序。每次我打電話給GET時,我都會遇到一個說明連接被拒絕的ripple.js錯誤。即使我嘗試使用真正的Android設備,也會拒絕連接。下面是使用波紋模擬器Cordova Angular獲取Web Api連接拒絕
OPTIONS http://****:4400/ripple/xhr_proxy?tinyhippos_apikey=ABC&tinyhippos_rur…Fget%3D%257B%2522method%2522%3A%2522GET%2522%2C%2522array%2522%3Atrue%257D net::ERR_CONNECTION_REFUSED
我肯定啓用Web API 2服務器上CORS以來,科爾多瓦和Web API項目都是一樣的本地主機上的不同端口號時出錯。我不僅證明了cors的功能,而且還通過創建具有角度網頁的cordova角度應用的精確副本來代碼。我也試過郵差,都正確地得到JSON響應。這是隻有科爾多瓦Android應用程序給我的連接被拒絕。任何幫助將不勝感激!
這裏是角GET樣子
app.factory('mrMaintService', function ($resource) {
return $resource('http://localhost:15528/api/requests', {
get: { method: 'GET', array: true }
});
});
這表明我允許在網頁API項目的所有領域:
<httpProtocol>
<customHeaders>
<add name="Access-Control-Allow-Origin" value="*" />
</customHeaders>
</httpProtocol>
是否已將您的cordova config.xml中的api域列入白名單?見https://cordova.apache.org/docs/en/edge/guide_appdev_whitelist_index.md.html#Whitelist%20Guide – Amitesh 2014-11-25 05:28:21
那裏有一個星號,所以我假設所有的都是白名單。我也明確地添加了web api localhost,但沒有運氣。還有其他建議嗎? – 2014-11-25 05:36:41