Перенаправление при использовании PathBase - PullRequest
0 голосов
/ 08 января 2019

Я определил PathBase как

new PathString("/test_environment/");

Тогда я нахожусь на https://localhost:5001/test_environment/Login

и после входа перенаправляется на /MyController/

Все работает правильно - контроллер и его метод достигнуты и правильно обслуживают данные, но мой URL в браузере:

https://localhost:5001/MyController/

Работает нормально, но куда девался /test_environment/

MyMethod в MyController имеет [Route("/")] атрибут

1 Ответ

0 голосов
/ 09 января 2019

Для app.UsePathBase добавляется промежуточное программное обеспечение, которое извлекает указанную базу пути из пути запроса и передает его в базу пути запроса.

Для [Route("/")] будет сгенерирован запрос https://localhost:5001/, если вы используете RedirectToAction.

Вы получили https://localhost:5001/MyController/, я полагаю, вы используете Redirect для перенаправления URL.

Попробуйте код ниже в Login.

public IActionResult Login()
{
    if (Request.Path.StartsWithSegments("/test_environment"))
    {
        return Redirect("/");
    }
    else
    {
        return Redirect("/test_environment/");
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...