簡體   English   中英

如何在Azure存儲Blob上啟用CORS

[英]How do I enable CORS on Azure Storage Blob

我正在嘗試使用本文使用Azure存儲blob自定義Azure B2C上的UI頁面。 它需要啟用CORS。 我用test-cors.org測試了它,我知道它不是,但我不知道如何設置它

Ther文章使用https://wingtiptoysb2c.blob.core.windows.net/b2c/wingtip/selfasserted.html ,我測試並返回200但我的沒有https://bookssorted.blob.core.windows.net/b2c /selfasserted.html

本文討論如何使用此PUT https://myaccount.blob.core.windows.net/?restype=service&comp=properties HTTP/1.1但我該如何運行?

編輯:我正在使用Azure存儲資源管理器,我在blob上設置了這些規則,但它仍然沒有從test-cors.org返回http 200 在此輸入圖像描述

EDIT2:這是對身份驗證策略發出請求的URL,該策略加載使請求加載blob的頁面

https://login.microsoftonline.com/bookssorted.onmicrosoft.com/oauth2/v2.0/authorize?p=B2C_1_bookssortedAuthenticationPolicy&client_Id=35f308cd-8914-4035-9f62-cec7600c1727&nonce=defaultNonce&redirect_uri=https%3A%2F%2Flocalhost%2Fbookssorted% 2Fsecure%2Fsuccess&范圍=的OpenID&RESPONSE_TYPE = id_token&提示=登錄

EDIT3:請求的標頭 在此輸入圖像描述 在此輸入圖像描述 在此輸入圖像描述 在此輸入圖像描述 在此輸入圖像描述

為了使cross-origin request成功,請求必須與CORS配置匹配。 這包括request originrequest headersexposed (response) headers 任何不匹配都會導致請求失敗。

如果原點已知,則必須在CORS規則中指定該URL(包括協議和端口號,如果適用)。 如果原點未知,您可以指定*作為原點,所有URL都可以發出此類請求。

請求標頭和公開標頭也是如此。 由於對Azure存儲的不同請求使用不同的請求標頭並返回不同的響應標頭,因此建議在CORS規則中將這些標記的值設置為* 這將確保接受所有請求/響應標頭。

您可以在多個級別配置CORS; Web服務器,瀏覽器,資源(API或在您的情況下返回200的東西)或客戶端。

我不清楚你想要實現或解決的是什么,但我認為你可能需要提供更多信息。

失敗在哪里? 你有什么訪問權限? 你想通過“運行”那個HTTP命令來實現什么?

您是否有錯誤或對架構流程的某種描述以及發生故障的位置?

此外,如果您了解CORS實際上是什么,它會有所幫助:

https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS

在這里你可以看到,你的問題有很多解決方案。 例如,您可以在每個請求上將此附加到HTTP標頭,這將允許跨源資源響應:

Access-Control-Allow-Origin:*

您的飛行前檢查可能失敗。 您的瀏覽器可能會阻止該請求。 如果REQUEST和RESPONSE都不是來自同一個域名(mysite.com),那么您將遇到問題並需要以適當的方式解決它。

我希望這有幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM