欢迎您光临深圳塔灯网络科技有限公司!
电话图标 余先生:13699882642

pageadmin制作用户登录状态界面

发表日期:2019-04 文章编辑:小灯 浏览次数:2432

有时候我们需要网站用户登录后可以给出一些友好提示,比如类似pageadmin主站用户登录后提示,您好,某某,以此为例演示一下如何获取到用户登录状态。

由于V4版本登录使用了单点登录,所以通过ajax jsonp的方式去获取数据是最好的方式,既然需要ajax请求,那么就需要有一个请求文件,请求文件可以用自定义文件新建(ashx或aspx都可以),参考创建自定义文件教程。

1、下面在站点模板目录下新建一个GetCurrentUser.cshtml的模板文件(保存为utf8格式),内容如下:

@{ 
    Layout = null;
    string userName = "";
    string userToken = Request.QueryString["userToken"];
    WebApiHelper webApiHelper = new WebApiHelper();
    Dictionary<string, string> dictionary = new Dictionary<string, string>();
    dictionary.Add("userToken", userToken);
    dictionary.Add("ip", StringHelper.GetIP());
    dictionary.Add("method", "Member.Account.GetCurrentUser");
    string result = webApiHelper.Get(dictionary);
    if (!string.IsNullOrEmpty(result))
    {
        CurrentUser user = JsonHelper.DeserializeObject<CurrentUser>(result);
        if (user != null)
        {
            userName = user.UserName;
        }
    }
}
@if (!string.IsNullOrEmpty(userName))
{
    <a href="http://u.pageadmin.net/" class="denglu" title="进入会员中心" target="_blank">你好,@userName</a>
}
else
{
    Response.Clear();
    Response.End();
}

原理就是,获取到UserToken参数,通过系统内置的的api去获取用户名,代码中的CurrentUser是一个类,包含UserName,Uid,MemberGroupId,DepartmentId,Email,Mobile这几个重要参数,可根据实际需求获取。

2、然后在自定义路由配置文件中新建一个配置节点

  <route urlConstraint="^Common/GetCurrentUser/$"  viewPath="Common/GetCurrentUser.cshtml" httpcacheSolutionId="0" columnId="0" title=""></route>

GetCurrentUser.cshtml放在Common目录下,请求url规则为Common/GetCurrentUser/。

3、在模板中可以通过json的方式请求数据。

<div id="loginBox">
<a href="http://u.pageadmin.net/Login/" class="denglu" target="_blank">登录</a><a href="http://u.pageadmin.net/Reg" class="zhuce" target="_blank">注册</a>
</div>
<script type="text/javascript">
    $(function () {
        $.ajax({
            url: "http://u.pageadmin.net/e/GetUserToken",
            type: "GET",
            dataType: "jsonp", //指定服务器返回的数据类型
            success: function (data) {
                if (data != "") {
                    $.get("/Common/GetCurrentUser/", "userToken=" + encodeURIComponent(data), function (data) {
                        if (data != "") {
                            $("#loginBox").html(data);
                        }
                    });
                }
            }
        });
    });
</script>

注:上面代码中的http://u.pageadmin.net/改为你自己的会员中心域名。


本页内容由塔灯网络科技有限公司通过网络收集编辑所得,所有资料仅供用户参考了本站不拥有所有权,如您认为本网页中由涉嫌抄袭的内容,请及时与我们联系,并提供相关证据,工作人员会在5工作日内联系您,一经查实,本站立刻删除侵权内容。本文链接:http://www.dengtar.com/19120.html
相关cms文章
 八年  行业经验

多一份参考,总有益处

联系深圳网站公司塔灯网络,免费获得网站建设方案及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

业务热线:余经理:13699882642

Copyright ? 2013-2018 Tadeng NetWork Technology Co., LTD. All Rights Reserved.