• C#网页授权获取微信Openid



    string openid = ""; 
    string appid = "微信公众号appid";
    string appsecret = "秘钥";
    if (Session["openid"] == null)
    {
      string code = Request.QueryString["code"];
      string state = Request.QueryString["state"];
      if (code != null && code.Length > 0)
      {
        #region 获取到CODE
        string posturl = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=" + appid + "&secret=" + appsecret + "&code=" + code
        + "&grant_type=authorization_code";
        string getstr =HttpGet(posturl, "utf-8");

        JsonData jd = JsonMapper.ToObject(getstr);
        openid = jd["openid"].ToString();
        Session["openid"] = openid;

        #endregion
      }
      else
      {
        string callbackurl = Request.Url.ToString();
        openid = (string)Session["openid"];
        if (openid == null || openid.Length <= 0)
        {
          string ecode = MD5Encode(callbackurl).ToLower().Substring(0, 15);
          Session["wx_encode"] = ecode;
          string url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=" + appid + "&redirect_uri="
          + Server.UrlEncode(callbackurl) + "&response_type=code&scope=snsapi_userinfo&state=" + ecode + "#wechat_redirect";
          Response.Redirect(url);
        }

      }

    }else
    {
      openid = (string)Session["openid"];
    }

     

  • 相关阅读:
    cve-2015-1635 poc
    Python实现ORM
    Android完全退出应用的方法
    Java反射理解
    Android动画
    Android进程间通信IPC
    Java的四种引用方式
    Android底部菜单的实现
    Android中AsyncTask使用
    Android自定义控件
  • 原文地址:https://www.cnblogs.com/dsjbk/p/14705426.html
Copyright © 2020-2023  润新知