我使用ASP.NET React Template创建了一个带有React前端的ASP.NET Core应用程序。当我运行应用程序时,ASP.NET API将在端口7276
上运行,而React应用程序将在端口5173
上运行。这意味着我不能使用React应用程序的相对URL指向API。例如,/api/auth/login
个
......不起作用。我必须做:https://localhost:7276/api/auth/login
个
.相反(当部署到云时,此问题如何影响应用程序,不在此问题的范围内)。
我当然可以使用完整的URL,但我觉得这不应该是必要的。此外,根据这篇关于C# React应用程序的BFF教程(基于旧模板),它似乎应该使用相对链接。
有没有一种方法可以配置ASP.NET Core React应用程序,以便在React部分中调用相对URL,将针对API?
1条答案
按热度按时间hec6srdp1#
新的模板使用了一个开发环境的代理。这个代理运行在前端节点中,并在
vite.config.js
中配置。代理将把用于后端的流量代理到运行在端口7276上的asp.net,所以你永远不必引用该端口。因此,实际上您可以使用
https://localhost:5173/api/auth/login
或相对URL。但是,默认情况下,代理仅为
WheatherForeCast
控制器配置,因此您必须将控制器路径添加到代理配置中。字符串