我正在向我的本地web服務發出一個GET請求,我期待一個302響應返回頭中的位置。但是,即使我可以在本地看到請求正在被服務,並且在webservice中沒有任何錯誤地創建響應,我也會收到未定義的響應和網絡錯誤。302響應錯誤
我試過郵差和Chrome,它收到重定向響應並重定向。
我不確定這是否是一個CORS問題,如果是的話,我該如何解決這個問題?
我在爲CORS響應標頭已經添加過濾
Access-Control-Expose-Headers: Location, [own headers]
Access-Control-Allow-Origin: '*'
Access-Control-Allow-Methods: POST, PUT, GET, OPTIONS, DELETE
Access-Control-Max-Age: [some age]
Access-Control-Allow-Headers: [own headers]
和所述位置是存在於報頭,當我使用郵差
請求我使用Axios公司製造和的配置是
const config = {
url: [someURL],
method: 'GET',
headers: {
'customHeader':'token',
},
params: {
[params]
},
maxRedirects: 0,
validateStatus: status => (status >= 200 && status < 300) || status === 302,
};
任何幫助將真正理解,爲什麼反應是不確定的,當它達到我的JS代碼,但在郵差和Chrome的正常工作。
我可以解決這個問題的一個方法是使用HTTP狀態代碼200並獲取位置標頭重定向,但我想避免這種情況,因爲它在技術上是重定向響應。
可能您可以嘗試檢查'readyState'狀態並查找'HEADERS_RECEIVED'(https://xhr.spec.whatwg.org/)。請檢查此http://stackoverflow.com/questions/228225/prevent-redirection-of-xmlhttprequest答案。 –
但我得到一個未定義的響應,其中不包含任何狀態或響應正文或標題 – diepjy