簡體   English   中英

請求的資源上不存在“Access-Control-Allow-Origin”標頭 React Django 錯誤

[英]No 'Access-Control-Allow-Origin' header is present on the requested resource React Django error

從源 'http://localhost:3000' 獲取在 'http://localhost:8000/api/product/' 的訪問已被 CORS 策略阻止:沒有 'Access-Control-Allow-Origin' 標頭存在於請求的資源。 如果不透明響應滿足您的需求,請將請求的模式設置為“no-cors”以在禁用 CORS 的情況下獲取資源。

我對 Django 沒有任何經驗,但我知道該錯誤是因為您必須啟用 CORS,這將允許您對調用源以外的域(或在不同端口上)進行 api 調用。 查看文檔以了解如何啟用 CORS。

https://pypi.org/project/django-cors-headers/

此錯誤是由您的 Django 后端引起的。 您可以采取以下措施來修復它:

  1. 使用@seddouguim 建議的 pip 安裝 django-cors-headers
  2. 在 django settings.py 文件中將“corsheaders”添加到已安裝的應用程序中
  3. 在同一個 settings.py 文件的底部,您可以添加一個名為CORS_ORIGIN_WHITELIST=['localhost:3000'] (或您想要添加的任何 URL)的設置,或者您可以設置CORS_ORIGIN_ALLOW_ALL = True (對開發人員有益,但不適用於用於生產環境)
  4. 最后設置CORS_ALLOW_HEADERS = ("x-requested-with", "content-type", "accept", "origin", "authorization", "x-csrftoken")

你應該很高興去

如果您遇到任何其他問題,請隨時告訴我

暫無
暫無

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

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