我想将mydomain.com/signin-microsoft路由到api / Account / ExternalLoginCallback
知道如何解决这个问题吗?
配置
config.Routes.MapHttpRoute(
name: "MicrosoftOAuth",
routeTemplate: "signin-microsoft",
defaults: new { controller = "Account", action = "ExternalLoginCallback" });
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
控制器
[HttpGet]
public async Task ExternalLoginCallback(string returnUrl = null)
{
}
更新 出于测试目的,我尝试了配置:
[HttpGet]
[Route("~/test-test")]
public async Task ExternalLoginCallback(string returnUrl = null)
{
}
它工作得很好。 由于我在OAuth中使用OWIN,因此可能与MicrosoftOAuth提供程序有关。
提前致谢
答案 0 :(得分:0)
您可以使用属性路由。在您的配置中:
config.MapHttpAttributeRoutes();
将此属性添加到ExternalLoginCallBack方法:
[Route("signin-microsoft")]