微信开发之推送消息的实现

互联网 17-3-11
这篇文章主要介绍了微信开发 消息推送实现代码的相关资料,需要的朋友可以参考下
//定义数据模型     public class Access_token  {  public Access_token()  {  //  // TODO: 在此处添加构造函数逻辑  //  }  string _access_token;  string _expires_in;     ///        /// 获取到的凭证  ///     public string access_token  {  get { return _access_token; }  set { _access_token = value; }  }        ///        /// 凭证有效时间,单位:秒  ///     public string expires_in  {  get { return _expires_in; }        set { _expires_in = value; }  }     }
 public ActionResult index(string returnUrl)  {     GetAccess_token();     IsExistAccess_Token();     return View();  }           public static Access_token GetAccess_token()  {  string AppUrl = "https://qyapi.weixin.qq.com/cgi-bin/gettoken?";  string AppID = "应用组的CorpID";//在设置-》权限管理-》系统管理组  string AppSecret = "应用组的Secret";//在设置-》权限管理-》系统管理组  WebClient webClient = new WebClient();  Byte[] bytes = webClient.DownloadData(string.Format("{0}corpid={1}&corpsecret={2}", AppUrl, AppID, AppSecret));  string result = Encoding.GetEncoding("utf-8").GetString(bytes);  JObject jObj = JObject.Parse(result);     string token = jObj["access_token"].ToString();  string expires_in = jObj["expires_in"].ToString();     Access_token mode = new Access_token();  mode.access_token = token;  mode.expires_in = expires_in;  return mode;  }     ///
public static string IsExistAccess_Token()  {  string Token = string.Empty;  DateTime YouXRQ;  string strPath = "../../weixin/XMLFile.xml";  // 读取XML文件中的数据,并显示出来  //string filepath = System.Web.Hosting.HostingEnvironment.MapPath(strPath);  string filepath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, strPath);     StreamReader str = new StreamReader(filepath, System.Text.Encoding.UTF8);  XmlDocument xml = new XmlDocument();  xml.Load(str);  str.Close();  str.Dispose();  Token = xml.SelectSingleNode("xml").SelectSingleNode("Access_Token").InnerText;  YouXRQ = Convert.ToDateTime(xml.SelectSingleNode("xml").SelectSingleNode("Access_YouXRQ").InnerText);        if (DateTime.Now > YouXRQ)  {  DateTime _youxrq = DateTime.Now;  Access_token mode = GetAccess_token();  xml.SelectSingleNode("xml").SelectSingleNode("Access_Token").InnerText = mode.access_token;  _youxrq = _youxrq.AddSeconds(int.Parse(mode.expires_in));  xml.SelectSingleNode("xml").SelectSingleNode("Access_YouXRQ").InnerText = _youxrq.ToString();  xml.Save(filepath);  Token = mode.access_token;  }     object text = new  {  toparty = "1",  agentid = "2",  msgtype = "text",  text = new  {  content = "项目名称:"+来保网+""  }  };     string wcr= btnSend(Token, text);  return wcr;     }  public static string btnSend(string Token, object text)  {     string url = "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=" + Token;  WebRequest req = WebRequest.Create(url);  JavaScriptSerializer aa = new JavaScriptSerializer();  string postData = aa.Serialize(text);  byte[] requestBytes = Encoding.UTF8.GetBytes(postData);  req.Method = "POST";  req.ContentType = "application/x-www-form-urlencoded";  req.ContentLength = requestBytes.Length;     Stream requestStream = req.GetRequestStream();  requestStream.Write(requestBytes, 0, requestBytes.Length);  requestStream.Close();  HttpWebResponse res = (HttpWebResponse)req.GetResponse();  StreamReader sr = new StreamReader(res.GetResponseStream(), Encoding.Default);  string backstr = sr.ReadToEnd();  sr.Close();  res.Close();  WeChatReturn WCR = aa.Deserialize(backstr);  return WCR.errmsg;     }

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

以上就是微信开发之推送消息的实现的详细内容,更多内容请关注技术你好其它相关文章!

来源链接:
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场
上一篇:php获取远程图片并下载保存到本地的方法分析 下一篇:微信开发-有关微信授权问题

相关资讯