ASP.NET Core 6按IP配置CORS策略失效问题求助
按IP配置CORS策略后无法提交请求的原因及解决方法
未在请求管道中启用CORS中间件
你仅注册了CORS策略,但ASP.NET Core需要在请求处理管道中显式启用CORS才能让策略生效。在Program.cs的管道配置部分,必须添加app.UseCors("corsapp"),且要注意中间件的顺序——必须放在UseRouting之后,UseAuthorization和UseEndpoints之前,示例代码:app.UseRouting(); // 启用CORS,位置错误会导致策略不生效 app.UseCors("corsapp"); app.UseAuthorization(); app.UseEndpoints(endpoints => { endpoints.MapControllers(); });浏览器请求的Origin与配置不匹配
确认你在浏览器中访问React应用的地址是http://192.168.0.109:8000,而非localhost:8000。如果用localhost访问,浏览器发送的请求头Origin是http://localhost:8000,和你配置的http://192.168.0.109:8000不匹配,CORS会直接拒绝请求。ASP.NET Core服务未绑定局域网IP
如果你的ASP.NET Core服务仅绑定了localhost,可能无法正常处理来自局域网IP的请求。可以在Program.cs中配置服务绑定多个地址:builder.WebHost.UseUrls("http://localhost:5220", "http://192.168.0.109:5220");或者修改
launchSettings.json中的applicationUrl字段,添加局域网IP的绑定地址,确保服务能接收来自192.168.0.109的请求。查看浏览器控制台的具体错误信息
打开浏览器开发者工具(F12),切换到Console标签页,查看CORS相关的错误提示。错误信息会明确说明是Origin不被允许,还是其他CORS规则冲突,能帮你精准定位问题。
内容的提问来源于stack exchange,提问作者Liam neesan
相关产品推荐
相关产品推荐

