fenglingju 2017-08-09 06:20 采纳率: 0%
浏览 2666
已结题

asp.net mvc5用户登录的问题,急急急!!!!!!!!!!!!!

各位,好,求大家帮忙
我做了一个mvc5 的portal站点,里面使用了:
public class CheckLoginAttribute : ActionFilterAttribute, IAuthenticationFilter
{
public void OnAuthentication(AuthenticationContext filterContext)
{
//var user = filterContext.HttpContext.Session["AdminUser"];
if (!filterContext.HttpContext.User.Identity.IsAuthenticated)
{
var content = new ContentResult();
//解密获取加密的cookie里面的信息
var url = string.Format("{0}?returnUrl={1}", FormsAuthentication.LoginUrl, filterContext.HttpContext.Request.RawUrl);
content.Content = string.Format("alert('请先登录!');window.location.href='{0}';", url);
filterContext.Result = content;
}
}
}

拦截器进行身份拦截,在这个应用中,我通过
[CheckLogin]
public ActionResult Index()
{
return View();
}
这样可以拦截到,当登录后,就可以通过认证

            而我另外的一个应用,要通过这个站点进行管理,另外的一个应用:

             [CheckLogin]
    public ActionResult Index()
    {
        ViewBag.UserName = System.Web.HttpContext.Current.User.Identity.Name;
        comLog.Info(System.Web.HttpContext.Current.User.Identity.Name);
        return View();
    }


            两个的webconfig都用了forms认证

             <system.web>
<authentication mode="Forms">
     <forms loginUrl="http://192.168.1.4:8090/Login/Logon" name=".iamshop"/>
</authentication>


    结果在第二个应用中,怎么也拿不到用户,总是跳转到登录页面,求大家有没有解决办法,备注:第一个站点部署了一个站点端口:8090,另外的一个8091

    就是想在8090上面登录,然后8091上面拿到用户登录信息后,通过CheckLoginAttribute的认证后正常展示。。。。谢谢
  • 写回答

3条回答 默认 最新

  • fenglingju 2017-08-09 06:22
    关注

    在同一个站点下,通过[CheckLogin]这个认证没问题,结果在8091站点下,怎么也通过不了,求大家给一个方案,谢谢

    评论

报告相同问题?

悬赏问题

  • ¥50 如何增强飞上天的树莓派的热点信号强度,以使得笔记本可以在地面实现远程桌面连接
  • ¥15 MCNP里如何定义多个源?
  • ¥20 双层网络上信息-疾病传播
  • ¥50 paddlepaddle pinn
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 请问这个是什么意思?
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services