2016-04-05 66 views
0

我在Apache Cordova和CORS中苦苦掙扎。Apache cordova:只接受帶有GET動詞的CORS請求

當我運行在瀏覽器中的一切應用效果很好,所以我的服務器必須得到很好的配置。

但是當我運行與移動應用,以及完全相同的請求向服務器發出,只有GET請求工作...我得到一個HTTP代碼403 POST或DELETE請求。

我已經安裝cordova-plugin-whitelist並進行配置如下:

<access origin="*" /> 
<allow-navigation href="*" /> 
<allow-intent href="https://*/*"/> 

任何瞭解,將不勝感激。

回答

0

您是否正確設置了內容安全策略meta標籤在您的index.html爲您科爾多瓦的應用程序。

一個例子是這樣的,去index.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 *; connect-src *"> 

有多種方式可以通過配置來滿足您的安全需求,有一個博客帖子here解釋在一個科爾多瓦應用程序的背景下,還有一個網站here,更一般地解釋了這個概念。

+0

感謝您對您的回覆,我已經設置默認'-SRC *'不安全內聯「不安全-EVAL」; connect-src *'unsafe-inline''unsafe-eval';'作爲元的內容,所以我不認爲問題來自於此。 – Simon

+0

@Simon,只是看看這些鏈接,看看是否有幫助http://stackoverflow.com/questions/28338435/ajax-post-returning-status403-statustextforbidden-cordova-android http://stackoverflow.com/questions/24973290/cordova-post-request-forbidden-403-not-reaching-dispatcher-servlet http://stackoverflow.com/questions/30319572/403-forbidden-doing-ajax-post-from-cordova-5-0- 0-應用 – Gandhi