雲存儲上傳的CORS問題

概念:Cross-Origin Resource Sharing (CORS)是W3c工作草案,它定義了在跨域訪問資源時瀏覽器和服務器之間如何通信。CORS背後的基本思想是使用自定義的HTTP頭部允許瀏覽器和服務器相互瞭解對方,從而決定請求或響應成功與否。

對一個簡單的請求,沒有自定義頭部,要麼使用GET,要麼使用POST,它的主體是text/plain,請求用一個名叫Orgin的額外的頭部發送。Origin頭部包含請求頁面的頭部(協議,域名,端口),這樣服務器可以很容易的決定它是否應該提供響應。

問題一:oss阿里雲跨域上傳失敗?

這裏寫圖片描述

需要注意的是:
瀏覽器發送了Request Method:OPTIONS 並且還發送了如下幾個Header,
Access-Control-Request-Headers:content-type
Access-Control-Request-Method:POST
Host:cors-test.oss-cn-hangzhou.aliyuncs.com
Origin:http://10.101.166.53

解決方案:

根據瀏覽器中發送的Header,設置CORS
例如設置成:

<CORSConfiguration> 
    <CORSRule> 
        <AllowedOrigin>http://10.101.166.53</AllowedOrigin> 
        <AllowedMethod>GET</AllowedMethod> 
        <AllowedMethod>POST</AllowedMethod> 
        <AllowedHeader>*</AllowedHeader> 
    </CORSRule> 
</CORSConfiguration> 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章