首页
未解之谜
天体物理
科技前沿
下载中心
游戏天地
[FW:AdTitle]
首页 >> 科技前沿 >> 正文

C# 实现扫码二维码登录2019-3-6|阅读:303 次|出处:本站原创|编辑:管理员

  • 最近在做一个扫码登录功能,为此我还在网上搜了一下关于微信的扫描登录的实现方式。当这个功能完成了后,我决定将整个实现思路整理出来,方便自己以后查看也方便其他有类似需求的程序猿些。

    要实现扫码登录我们需要解决两个问题:


    首先,获取OPENID。

    其次,生成一个随机数,然后把随机数登录后的OPENID写入服务器文本里!


    我们需要一个AJAX每一秒对服务器进行验证,是否登录成功!


    直接上代码吧!

    首先是登录页面



    Session[“OPENID“] = ““; Random ra = new Random();
    int RaNo = ra.Next(0, 100000); string SID = Session.SessionID;
     Session[“Rano“] = RaNo;
    string TwoCode = QR.create_two(“http://“ + Request.Url.Host + “login.aspx?sid=“ + SID + “$rn=“ + RaNo, “/CodeTemp/“, SID);




    接下来是判断用户是否登录


    public bool ChangeLogin() {
     try {
     string SingleUser = com.ReadHtmlFile(Server.MapPath(“文本“));
     if (SingleUser != ““) {
     if (SingleUser.IndexOf(“$“) > 0) {
     string[] Arr = SingleUser.Split(\'$\');
     if (Arr[0] == Session[“Rano“].ToString()) {
     Session[“OPENID“] = Arr[1]; return true;
     }
     }
     }
     return false;
     }
     catch { return false; }
    }



    下一步是微信扫码


    string code = Request[“code“];
     string SID = Request[“sid“] == null ? ““ : Request[“sid“];
     string RaNo = Request[“rn“] == null ? ““ : Request[“rn“];
     if (SID != ““ && RaNo != ““) { string OpenID = AT.CodeGetOpenid(code); com.WriteHtmlFile(RaNo.ToString() + “$“ + OpenID, Server.MapPath(“文本“)); }



    AJAX 就不写了。如果要请发邮箱到admin@14352669.com



免责声明:本文所提供的信息(包括图片、文字、视频等)内容均来源于网络,只供参考之用,不代表本站观点。如有侵权、违规,请联系我们删除。
上一条:Jquery添加元素(append,prepend,after,before四种方法区别对比)下一条:一天完成把PC网站改为自适应!原来这么简单!
今日推荐
一周阅读排行
Copyright © 2017-2018 怪里咕咚 All Rights Reserved
滇ICP备17000807号-2
访问量: