Как создать URL для углового маршрута на моем сервере .NET Core - PullRequest
0 голосов
/ 13 мая 2019

Мой проект использует .NET Core (2.2) Шаблон Angular Spa .В этой настройке маршрутизация обрабатывается клиентским веб-приложением Angular (7).

Как создать URL-адрес для формы сброса пароля, которая будет отправлена ​​вместе с сообщением электронной почты для сброса пароля, если нет действия контроллера, связанного с этим маршрутом / компонентом?

В классическом ASPПроект .NET, например, со страницами Razor, я бы использовал класс UrlHelper для создания URL-адреса, указывающего на конкретный контроллер и действие.Действительно, я все еще использую UrlHelper для создания URL-адреса для сообщения с подтверждением по электронной почте:

var callbackUrl = new Uri(Url.Link("ConfirmEmail", new { username = newUser.UserName, code = code }));

Это возможно, поскольку существует действие «Подтвердить электронную почту»:

    [HttpGet, Route("ConfirmEmail", Name = "ConfirmEmail")]
    [AllowAnonymous]
    public async Task<IActionResult> ConfirmEmail(string username, string code)
    {
        ...
    }

URL-адрес длясброс пароля отличается, потому что для этого нет действия контроллера.Ссылка содержит параметр кода и указывает на угловой компонент.Бит, о котором я не могу найти информацию, заключается в том, как получить маршрут / базу URL-адреса, который находится в разработке http://localhost:55722, но в производстве будет другим:

http://localhost:55722/reset-password/my_parameter_here

Я мог бы создать макет'действие, которое используется для создания URL, но это, похоже, слишком далеко.Каков наилучший способ сделать это?

1 Ответ

1 голос
/ 13 мая 2019

Если вы знаете, откуда вы работаете с приложением Angular, создайте URL-адрес вручную (также зная конфигурацию маршрутизации в приложении Angular).Вы также можете сохранить корневой URL-адрес вашего углового приложения в бэкэнде, чтобы помочь вам в создании окончательного URL-адреса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...