天天看點

解決dotnet-Angular的跨域(cors)問題

之前學了點 Angular ,打算用 dotnet core 做後端,之前沒接觸過這方面的東西,理所當然的遇到了跨域問題,之後也解決了,是以在此做個記錄

在使用 dotnet cli 生成的 angular 模闆中

解決dotnet-Angular的跨域(cors)問題

大概有一段代碼是這樣寫的 (如果 3.1 後面的版本沒改動的話)

angular 和 dotnet 同時啟動,也必須同時結束

這個時候兩個項目運作在同一個"域"下,大概是 <code>localhost:5000</code> 這種的

這樣并不友善調試,dotnet 部分需要改動的時候,angular 也需要停掉

是以 dotnet 相關文檔 給出了一個解決方案

解決dotnet-Angular的跨域(cors)問題

雖然友善了開發,但是之後大概就會出現一些跨域通路失敗的問題了(反正不知怎麼的,我就碰到這問題了)

主要修改 startup 中的代碼

<code>ConfigureServices</code> 中添加以下代碼

然後在 <code>Configure</code> 中添加

之後大概就可以了

如果有不同的需求,可以添加不同的跨域政策

然後在使用的時候自己選擇就好了

當使用 <code>AllowAnyOrigin</code> 的時候,允許所有域,如果希望能夠指定域,可以使用 <code>WithOrigins</code>

由于angular預設用4200端口

寫成這樣大概就好了

繼續閱讀