原创

C#后台【小程序】,【公众号】根据Code ,App_Id,App_Secret获取OpenId的区别

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/liuchang19950703/article/details/89215824

【小程序】:

/// <summary>
        /// 
        /// </summary>
        /// <param name="wxCode"></param>
        /// <param name="wxOpenId"></param>
        public void GetOpenIdByWxCode(string wxCode, out string wxOpenId)
        {
            //获取授权码【code】之后,Get请求微信用户openId的信息
            string str = string.Format(@"https://api.weixin.qq.com/sns/jscode2session?appid={0}&secret={1}&js_code={2}&grant_type=authorization_code",
            WxConfig.Wx_App_Id, //AppId
            WxConfig.Wx_App_Secret, //AppSecret
            wxCode
            );
            str=str.GetSourCode();
            Log.WriteLogByTxt(LogMsg.Log_Type_Msg, wxCode, wxCode, "CoWxUser", "GetOpenIdByWxCode", str);
            Match m = Regex.Match(str, @"{""session_key"":""(.*?)"",""openid"":""(.*?)""}",
            RegexOptions.IgnoreCase | RegexOptions.Singleline);
            string openId = m.Success ? m.Result("$2") : "";
            wxOpenId = openId;
        }

公众号:

 public void GetOpenIdByWxCode(string wxCode)
        {

               string str = string.Format(@"https://api.weixin.qq.com/sns/oauth2/access_token?appid={0}&secret={1}&code={2}&grant_type=authorization_code",
               WxConfig.Wx_App_Id, //APPID
               WxConfig.Wx_App_Secret, //appsecret
               wxCode
               ).GetSourCode();

            //获取该微信用户的openId
            Match m = Regex.Match(str, @"{""access_token"":""(.*?)"",""expires_in"":(.*?),""refresh_token"":""(.*?)"",""openid"":""(.*?)"",""scope"":""(.*?)""}",
            RegexOptions.IgnoreCase | RegexOptions.Singleline);
            string openid = m.Success ? m.Result("$4") : "";

        }

总结:【小程序】和【公众号】请求的地址和返回的参数都不一样,但是都是通过code,appid,appsecret来获取openid.

文章最后发布于: 2019-04-11 17:26:32
展开阅读全文
0 个人打赏

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 精致技术 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览