/// <summary> /// 获取关注者列表测试 /// </summary> public static void GetAttentionsTest() { IMpClient mpClient = new MpClient(); AccessTokenGetRequest request = new AccessTokenGetRequest() { AppIdInfo = new AppIdInfo() { AppID = appId, AppSecret = appSecret } }; AccessTokenGetResponse response = mpClient.Execute(request); if (response.IsError) { Console.WriteLine("获取令牌环失败.."); return; } GetAttentionsRequest request2 = new GetAttentionsRequest() { AccessToken = response.AccessToken.AccessToken }; var response2 = mpClient.Execute(request2); if (response2.IsError) { Console.WriteLine("获取关注者列表失败,错误信息为:" + response2.ErrInfo.ErrCode + "-" + response2.ErrInfo.ErrMsg); } else { Console.WriteLine("获取关注者列表成功"); Console.WriteLine(Tools.ToJsonString(response2.Attentions)); } }
protected void Page_Load(object sender, EventArgs e) { string weixin_appid = ""; string weixin_secret = ""; weixin_appid = Utils.GetConfigString("", "YHQAppId").Trim(); weixin_secret = Utils.GetConfigString("", "YHQAppSecret").Trim(); if (Utils.GetQueryStringValue("sync") != "1") Utils.RCWE(""); IMpClient mpClient = new MpClient(); AccessTokenGetRequest request = new AccessTokenGetRequest() { AppIdInfo = new AppIdInfo() { AppID = weixin_appid, AppSecret = weixin_secret } }; AccessTokenGetResponse response = mpClient.Execute(request); if (response.IsError) { Utils.RCWE("获取令牌环失败.."); } GetAttentionsRequest request2 = new GetAttentionsRequest() { AccessToken = response.AccessToken.AccessToken }; var response2 = mpClient.Execute(request2); if (response2.IsError) { Utils.RCWE("获取关注者列表失败,错误信息为:" + response2.ErrInfo.ErrCode + "-" + response2.ErrInfo.ErrMsg); } foreach (var item in response2.Attentions.data.openid) { var info1 = Eyousoft_yhq.Web.BsendMsg.WeiXin.GetUserInfo(item); var info = new Eyousoft_yhq.Model.MWeiXinYongHuInfo(); info.city = info1.City; info.country = info1.Country; info.createtime = DateTime.Now; info.headimgurl = info1.HeadImgUrl; info.language = info1.Language; info.latesttime = DateTime.Now; info.nickname = info1.NickName; info.openid = info1.OpenId; info.province = info1.Province; info.sex = info1.Sex; info.subscribe = info1.SubScribe; info.subscribe_time = info1.SubscribeTime; info.unionid = string.Empty; info.YongHuId = Guid.NewGuid().ToString(); new Eyousoft_yhq.BLL.BWeiXin().YongHu_C(info); } Utils.RCWE("获取关注者列表成功"); }
/// <summary> /// 获取关注者列表测试 /// </summary> public static string GetAttentions() { try { IMpClient mpClient = new MpClient(); var request = new AccessTokenGetRequest() { AppIdInfo = new AppIdInfo() { AppId = AppId, AppSecret = AppSecret } }; var response = mpClient.Execute(request); if (response.IsError) { return(null); } var request2 = new GetAttentionsRequest() { AccessToken = response.AccessToken.AccessToken }; var response2 = mpClient.Execute(request2); if (response2.IsError) { LogHelper.WriteLog(typeof(UserGroupOperation), response2.ErrInfo.ErrMsg); return(null); } return(Tools.ToJsonString(response2.Attentions)); } catch (Exception ex) { LogHelper.WriteLog(typeof(UserGroupOperation), ex); throw new Exception(ex.Message); } }
public static List <string> GetAttentionsList() { List <string> openIds = new List <string>(); while (true) { IMpClient mpClient = new MpClient(); GetAttentionsRequest request = new GetAttentionsRequest() { AccessToken = GetAccessToken(null), }; if (openIds.Count > 0) { request.NextOpenId = openIds.Last(); } var response = mpClient.Execute(request); if (response.IsError) { LogHelper.WriteError("WeixinHelper", "获取关注者列表失败,错误信息为:" + response.ErrInfo.ErrCode + "-" + response.ErrInfo.ErrMsg, null); break; } else { if (response.Attentions.data.openid.Count > 0) { openIds.AddRange(response.Attentions.data.openid); } if (response.Attentions.total <= openIds.Count) { break; } } } return(openIds); }
/// <summary> /// 获取关注者列表 /// </summary> /// <param name="AttentionsList">返回关注的列表</param> /// <param name="NextOpenId">超过一万时最后一个关注OPENID</param> /// <returns></returns> public static WeiXinResult GetAttentions(ref List <string> AttentionsList, string NextOpenId) { WeiXinResult AttentionsResult = new WeiXinResult(); IMpClient mpClient = new MpClient(); AccessTokenGetRequest request = new AccessTokenGetRequest() { AppIdInfo = new AppIdInfo() { AppID = appId, AppSecret = appSecret } }; AccessTokenGetResponse response = mpClient.Execute(request); if (response.IsError) { AttentionsResult.IsResult = false; AttentionsResult.ResultMsg = "获取令牌环失败"; return(AttentionsResult); } string AccessToken = response.AccessToken.AccessToken; GetAttentionsRequest request2 = new GetAttentionsRequest() { AccessToken = AccessToken, NextOpenId = NextOpenId }; var response2 = mpClient.Execute(request2); if (response2.IsError) { AttentionsResult.IsResult = false; AttentionsResult.ResultMsg = "获取关注者列表失败,错误信息为:" + response2.ErrInfo.ErrCode + "-" + response2.ErrInfo.ErrMsg; return(AttentionsResult); } else { var list = response2.Attentions; if (list.total > 0) { if (list.data.openid.Count > 0) { AttentionsList.AddRange(list.data.openid); if (list.total > 10000 && !String.IsNullOrEmpty(list.next_openid))//超过一万 { return(GetAttentions(ref AttentionsList, list.next_openid)); } else { // Adpost.Finawin.Utility.ConfigClass.SetConfigKeyValue("next_openid", list.next_openid); AttentionsResult.IsResult = true; AttentionsResult.ResultMsg = "获取关注者列表成功"; return(AttentionsResult); } } else { AttentionsResult.IsResult = false; AttentionsResult.ResultMsg = "无关注者数据"; return(AttentionsResult); } } else { AttentionsResult.IsResult = false; AttentionsResult.ResultMsg = "无关注者数据"; return(AttentionsResult); } } }
/// <summary> /// 获取关注者列表 /// </summary> /// <param name="AttentionsList">返回关注的列表</param> /// <param name="NextOpenId">超过一万时最后一个关注OPENID</param> /// <returns></returns> public static WeiXinResult GetAttentions(ref List<string> AttentionsList, string NextOpenId) { WeiXinResult AttentionsResult = new WeiXinResult(); IMpClient mpClient = new MpClient(); AccessTokenGetRequest request = new AccessTokenGetRequest() { AppIdInfo = new AppIdInfo() { AppID = appId, AppSecret = appSecret } }; AccessTokenGetResponse response = mpClient.Execute(request); if (response.IsError) { AttentionsResult.IsResult = false; AttentionsResult.ResultMsg = "获取令牌环失败"; return AttentionsResult; } string AccessToken = response.AccessToken.AccessToken; GetAttentionsRequest request2 = new GetAttentionsRequest() { AccessToken = AccessToken, NextOpenId = NextOpenId }; var response2 = mpClient.Execute(request2); if (response2.IsError) { AttentionsResult.IsResult = false; AttentionsResult.ResultMsg = "获取关注者列表失败,错误信息为:" + response2.ErrInfo.ErrCode + "-" + response2.ErrInfo.ErrMsg; return AttentionsResult; } else { var list = response2.Attentions; if (list.total > 0) { if (list.data.openid.Count > 0) { AttentionsList.AddRange(list.data.openid); if (list.total > 10000 && !String.IsNullOrEmpty(list.next_openid))//超过一万 { return GetAttentions(ref AttentionsList, list.next_openid); } else { // Adpost.Finawin.Utility.ConfigClass.SetConfigKeyValue("next_openid", list.next_openid); AttentionsResult.IsResult = true; AttentionsResult.ResultMsg = "获取关注者列表成功"; return AttentionsResult; } } else { AttentionsResult.IsResult = false; AttentionsResult.ResultMsg = "无关注者数据"; return AttentionsResult; } } else { AttentionsResult.IsResult = false; AttentionsResult.ResultMsg = "无关注者数据"; return AttentionsResult; } } }
protected void Page_Load(object sender, EventArgs e) { string weixin_appid = ""; string weixin_secret = ""; weixin_appid = Utils.GetConfigString("", "YHQAppId").Trim(); weixin_secret = Utils.GetConfigString("", "YHQAppSecret").Trim(); if (Utils.GetQueryStringValue("sync") != "1") { Utils.RCWE(""); } IMpClient mpClient = new MpClient(); AccessTokenGetRequest request = new AccessTokenGetRequest() { AppIdInfo = new AppIdInfo() { AppID = weixin_appid, AppSecret = weixin_secret } }; AccessTokenGetResponse response = mpClient.Execute(request); if (response.IsError) { Utils.RCWE("获取令牌环失败.."); } GetAttentionsRequest request2 = new GetAttentionsRequest() { AccessToken = response.AccessToken.AccessToken }; var response2 = mpClient.Execute(request2); if (response2.IsError) { Utils.RCWE("获取关注者列表失败,错误信息为:" + response2.ErrInfo.ErrCode + "-" + response2.ErrInfo.ErrMsg); } foreach (var item in response2.Attentions.data.openid) { var info1 = Eyousoft_yhq.Web.BsendMsg.WeiXin.GetUserInfo(item); var info = new Eyousoft_yhq.Model.MWeiXinYongHuInfo(); info.city = info1.City; info.country = info1.Country; info.createtime = DateTime.Now; info.headimgurl = info1.HeadImgUrl; info.language = info1.Language; info.latesttime = DateTime.Now; info.nickname = info1.NickName; info.openid = info1.OpenId; info.province = info1.Province; info.sex = info1.Sex; info.subscribe = info1.SubScribe; info.subscribe_time = info1.SubscribeTime; info.unionid = string.Empty; info.YongHuId = Guid.NewGuid().ToString(); new Eyousoft_yhq.BLL.BWeiXin().YongHu_C(info); } Utils.RCWE("获取关注者列表成功"); }