Exemplo n.º 1
0
        /// <summary>
        /// 根据用户Code获取用户信息(包括OpenId的简单信息)
        /// </summary>
        /// <param name="code"></param>
        /// <returns></returns>
        public static WeiXinUserSampleInfo GetUserSampleInfo(string code)
        {
            string url = string.Format(WeiXinConst.WeiXin_User_OpenIdUrl, code);
            WeiXinUserSampleInfo info = HttpClientHelper.GetResponse <WeiXinUserSampleInfo>(url);

            return(info);
        }
Exemplo n.º 2
0
        //
        // GET: /UserInfo/

        public ActionResult Index()
        {
            #region 应用授权作用域,snsapi_base

            //授权获取到的code
            string code = "";
            //通过code获取用户信息 不需要关注公众号
            WeiXinUserSampleInfo sampleInfo = WeiXinHelper.GetUserSampleInfo(code);
            string openId = sampleInfo.OpenId;

            #endregion

            #region (思路一致,开发过程中没用到,暂时放空。。)snsapi_userinfo (弹出授权页面,可通过openid拿到昵称、性别、所在地。并且,即使在未关注的情况下,只要用户授权,也能获取其信息)

            //授权获取到的code
            string code2 = "";
            //通过code获取用户信息 不需要关注公众号
            WeiXinUserSampleInfo sampleInfo2 = WeiXinHelper.GetUserSampleInfo(code2);
            string openId2     = sampleInfo2.OpenId;
            string accessToken = sampleInfo2.Access_Token;

            //todo:刷新accessToken 获取 refresh_token(如果需要)

            //todo:获取用户信息


            #endregion

            //这种方法获取用户信息,需要用户关注公众号
            WeiXinUserInfo info = WeiXinHelper.GetUserInfo(openId);

            return(View());
        }
Exemplo n.º 3
0
 /// <summary>
 /// 根据用户Code获取用户信息(包括OpenId的简单信息)
 /// </summary>
 /// <param name="code"></param>
 /// <returns></returns>
 public static WeiXinUserSampleInfo GetUserSampleInfo(string code)
 {
     string url = string.Format(WeChatConstModel.WeiXinUserOpenIdUrl, code);
     WeiXinUserSampleInfo info = HttpClientHelper.GetResponse<WeiXinUserSampleInfo>(url);
     return info;
 }