2016-12-27 185 views
1

我有http://example.com上的前端部分(js)和http://api.example.com上的後端(REST API)。是否有可能在每個GET/POST等請求之前發出沒有OPTIONS請求的後端請求?跨域請求子域

+0

可能的重複http://stackoverflow.com/questions/6277926/javascript-access-from-parent-domain-to-subdomain –

+0

它不重複。 CORS已經配置並正常工作。但是它爲每個請求增加了一些延遲,因爲它在每個請求之前發送OPTIONS請求。所以現在我正在尋找擺脫CORS的方法。 – Crabar

+0

對於'CORS'請求'選項'是強制性的。 OPTIONS的時間是美容。我的意思是不會花費太多時間。 –

回答

2

您無法擺脫OPTIONS請求,因爲您不會發送任何數據,也不會發送自定義標題。

根據Why am I getting an OPTIONS request instead of a GET request?

,如果你比應用程序/ x-WWW的形式,進行了urlencoded,多/表單數據,或者text/plain的其他內容類型發送數據的選項請求將被製成。

此外,如上所述,如果您發送自定義標題,則會發出OPTIONS請求。

因此,爲了避免飛行前檢查,您將被迫不做任何這些事情。

這都是因爲這個想法是首先檢查它是否允許CORS,並且你沒有發送任何數據到你不想發送的服務器。

+0

我可以在某處找到「非自定義」標題列表嗎?例如,我使用'WWW-Authenticate',它是否像自定義一樣? – Crabar

+0

這不是自定義標題。你可以在這裏查看https://en.wikipedia.org/wiki/List_of_HTTP_header_fields –

+0

你能給我一個提示,我的GET請求有什麼問題? https://gist.github.com/Crabar/25308f5b9e283c65b258d2402757a9da – Crabar