我正在訓練創建一個有角度的應用程式
好吧,當我從 Postman 呼叫 API 時它可以作業,但是當我嘗試在瀏覽器(firefox 或 chrome )上使用 HTTP.put 呼叫它時,我總是遇到此錯誤
跨域請求被阻止:同源策略不允許在 https://localhost:5001/api/users/set-main-photo/25 讀取遠程資源。(原因:未在 CORS 標頭“Access-Control-Allow-Methods”中找到方法)。
跨域請求被阻止:同源策略不允許在 https://localhost:5001/api/users/set-main-photo/25 讀取遠程資源。(原因:CORS 請求沒有成功)。
我做了一些研究,并使用攔截器訪問控制允許方法將其添加到我的標題中:GET、PUT、POST、DELETE、HEAD Access-Control-Allow-Origin:*
還是一樣的問題
有什么幫助嗎?
注意:HTTP.GET 和 HTTP.POST 作業正常謝謝
uj5u.com熱心網友回復:
在開始開發時,您遇到了一個常見問題。由于安全問題,您在沒有明確配置的情況下被限制跨域名呼叫。根據您的 API,您可以允許任何來源呼叫它。
在您的請求本身上設定標頭將不允許您繞過配置 API 所需的此限制。
您可以閱讀 https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS以獲得更好的理解。
或者如上所述,上一篇文章也涵蓋了該主題 https://stackoverflow.com/a/10892392/9994146
uj5u.com熱心網友回復:
我解決這個使用
app.UseCors(x => x
.AllowAnyMethod()
.AllowAnyHeader()
.SetIsOriginAllowed(origin => true) // allow any origin
.AllowCredentials()); // allow credentials
之前
app.UseCors( x => x.AllowAnyHeader().AllowAnyHeader().WithOrigins("https://localhost:4200"));
謝謝
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/332660.html
