#asp.net #.net #.net-core #single-page-application
#asp.net #.net #.net-ядро #одностраничное приложение
Вопрос:
Я разрабатываю одностраничное приложение (SPA) с ReactJS и ASP.NET . Я пытаюсь выполнить HTTP-запрос к конечной точке из кода на стороне клиента. Я использовал значение по умолчанию ASP.NET Шаблон SPA и изменил мою конфигурацию, как показано ниже.
fetch(`/items/${id}`).then((response: any) => {
return response.data;
})
Я изменил шаблон веб-api по умолчанию и вместо этого использую прокси-сервер в разработке. Вот так:
app.UseSpa(spa =>
{
spa.Options.SourcePath = "Client";
if (env.IsDevelopment())
{
spa.UseProxyToSpaDevelopmentServer("http://127.0.0.1:3000/");
//spa.UseReactDevelopmentServer(npmScript: "start");
}
});
Когда я выполняю выборку в коде клиента React, я получаю эту ошибку: Proxy error: Could not proxy request /items/1 from localhost:3000 to http://localhost:44381/ (ECONNREFUSED).
Как мне настроить мой серверный код для прокси запроса?
Ответ №1:
Согласно связанной проблеме на GitHub, сам spa.UseReactDevelopmentServer
прокси-сервер уже должен быть настроен на .Net Core 3.1. Так что вам, возможно, не нужно вызывать spa.UseProxyToSpaDevelopmentServer
себя вручную.
https://github.com/dotnet/AspNetCore.Docs/issues/12008#issuecomment-573453266