如何在登录重定向后获取用户名是Aspnet Boilerplate?

问题描述:

我有2个应用程序:一个登录(app1),另一个做我想要的其他东西(app2)。 app1构建在aspnet样板中,我想要做的是使用此应用登录后,我想重定向到app2。到现在为止一切正常,我只是使用returnUrl参数重定向到app2。问题是我想传递给app2某些登录信息,如用户名。它不应该在app1中改变任何东西,所以我该怎么做?如何在登录重定向后获取用户名是Aspnet Boilerplate?

APP 2建在MVC 5

+0

是** app1 ** MVC 5.x,.NET 4.6或.NET Core? – aaron

+0

** app1 **是MVC 5.x –

APP1,用户可从loginResult.User,你可以在this line看到:

await SignInAsync(loginResult.User, loginResult.Identity, loginModel.RememberMe); 

可以追加username作为查询后查询参数returnUrl

if (string.IsNullOrWhiteSpace(returnUrl)) 
{ 
    returnUrl = Request.ApplicationPath; 
} 
else 
{ 
    returnUrl += "?username=" + loginResult.User.UserName; // This line 
} 

并检索在app2

+0

感谢您的回答=)。我已经测试过,它的工作原理。但是,如果我想通过userName作为头?我期待这一行**返回Json(新的AjaxResponse {TargetUrl = returnUrl}); **。我如何更改AjaxResponse头文件? –

+0

我不确定,你可能可以访问'HttpContext.Current.Response'。 – aaron

+0

我已经尝试过了,但HttpContext并没有改变AjaxResponse =(。btw中的任何内容,我没有找到HttpContext.Current,我只是尝试了HttpContext.Response。 –