Устранение неполадок при передаче всех запросов из ядра ASP.NET на локальный сервер узла - PullRequest
0 голосов
/ 25 октября 2019

Мой шаблонный серверный проект ASP.NET Core 3 работает правильно, поэтому я просматриваю его по адресу https://localhost:5000. У меня также есть на моем том же локальном хосте, работающем на порте 4000, сервер узла, который работает правильно, когда я броузер на него на https://localhost:4000.

То, что я хочу, для всех запросов, которые приходят к https://localhost:5000/nodejs чтобы перейти к https://localhost:4000/., например, я хочу, чтобы

https://localhost:5000/api/Images/peter.png

вернул то, что обычно подается с https://localhost:4000/Images/peter.png

(и, конечно, все остальные запросы должны отображаться одинаково. Все URL, а не только те, о которых я упоминал выше).

Я пытался использовать пакет nuget AspNetCore.Proxy и когда я его используюкак показано ниже, он только прокси рут, а не любой другой URL.

Как проще всего переадресовывать все URL из моего основного проекта asp.net на мой сервер узлов?

ApiController.js

using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;

using AspNetCore.Proxy;
namespace reactapp.Controllers
{
    public class NextJsController : ControllerBase
    {
        [Route("nodejs")]
        public Task OpenNextJs()
        {
            return this.ProxyAsync($"http://localhost:4000");
        }
    }
}

и startup.js

services.AddProxies();

1 Ответ

0 голосов
/ 25 октября 2019

Я хочу, чтобы все запросы, поступающие на https://localhost:5000/nodejs, переходили на https://localhost:4000/.

Вы можете прокси-запрос, как показано ниже:

app.Map("/nodejs", builder => {  
    // now that the raw req path `/nodejs/...rest` has been change to `/...rest`
    //     proxy to the following server
    builder.RunProxy("http://localhost:4000");
});
...