微信开发之微信发送消息的示例分析
发表于:2025-01-21 作者:千家信息网编辑
千家信息网最后更新 2025年01月21日,这篇文章主要为大家展示了"微信开发之微信发送消息的示例分析",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"微信开发之微信发送消息的示例分析"这篇文章吧。1,
千家信息网最后更新 2025年01月21日微信开发之微信发送消息的示例分析
这篇文章主要为大家展示了"微信开发之微信发送消息的示例分析",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"微信开发之微信发送消息的示例分析"这篇文章吧。
1,首先,获取开发者测试账号(申请),会根据当前扫码提供的账号生成测试账号: 链接地址:http://mp.weixin.qq.com/wiki/home/index.html
这时候可以获取到测试用的appid和appsecrept,然后调用获取接口调用凭证 接口获取access_token;
2,下面说信息发送,模拟了单用户信息发送和多用户消息批量发送
(1)基础方法,http方法
////// http get/post 公用方法 /// /// 请求链接 /// 请求参数值(如果是get方式此处为""值,默认为 "") /// 请求方式 post or get ///public static string Request(this string requestUrl, string requestMethod, string requestJsonParams = "") { string returnText = ""; StreamReader streamReader = null; HttpWebRequest request = null; HttpWebResponse response = null; Encoding encoding = Encoding.UTF8; request = (HttpWebRequest)WebRequest.Create(requestUrl); request.Method = requestMethod; if (!string.IsNullOrEmpty(requestJsonParams) && requestMethod.ToLower() == "post") { byte[] buffer = encoding.GetBytes(requestJsonParams); request.ContentLength = buffer.Length; request.GetRequestStream().Write(buffer, 0, buffer.Length); } try { response = (HttpWebResponse)request.GetResponse(); using (streamReader = new StreamReader(response.GetResponseStream(), System.Text.Encoding.GetEncoding("gb2312")))//utf-8 { returnText = streamReader.ReadToEnd(); } } catch (Exception ex) { returnText = ex.Message; } return returnText; }
(2)模拟发送:
////// 发送微信信息(单用户发送) /// /// 授权码(微信token) /// 发送信息模型 ///public static string SendSingleMessage(WeChatParamEntity messageInfo, string access_token) { messageInfo.MsgType = string.IsNullOrEmpty(messageInfo.MsgType) ? "text" : messageInfo.MsgType; string jsonDataParams = messageInfo == null ? "" : JsonConvert.SerializeObject(new { touser = messageInfo.ToUser, msgtype = messageInfo.MsgType, text = new { content = messageInfo.Text } }); string requestUrl = string.Format(Consts.URL_POSTSINGLETEXTMESSAGE, access_token); return requestUrl.Request("POST", jsonDataParams); } /// /// 发送微信信息(多用户批量发送) /// /// 授权码(微信token) /// 发送信息模型 ///public static string SendMessages(WeChatParamsEntity messageInfo, string access_token) { messageInfo.MsgType = string.IsNullOrEmpty(messageInfo.MsgType) ? "text" : messageInfo.MsgType; string jsonDataParams = messageInfo == null ? "" : JsonConvert.SerializeObject(new { touser = messageInfo.ToUser, msgtype = messageInfo.MsgType, text = new { content = messageInfo.Text } }); string requestUrl = string.Format(Consts.URL_POSTTEXTMESSAGES, access_token); return requestUrl.Request("POST", jsonDataParams); }
(3)两个参数 模型:
////// 微信 发送信息 参数实体模型 /// public class WeChatParamEntity { ////// 普通用户openid /// public string ToUser { get; set; } ////// 传输的文件类型(text,image, and so on) /// public string MsgType { get; set; } = "text"; ////// 传输文本内容 /// public string Text { get; set; } } ////// 微信 发送信息 参数实体模型 /// public class WeChatParamsEntity { ////// 普通用户openid /// public string[] ToUser { get; set; } ////// 传输的文件类型(text,image, and so on) /// public string MsgType { get; set; } = "text"; ////// 传输文本内容 /// public string Text { get; set; } }
(4)web.config中的链接
3,测试使用涉及到 touser的这个参数,这个是需要发送的对象的 openID,这个很简单,在开发者文档(也就是上面的步骤二中,)获取
appid 和appsecrept的时候,当前这个页面下面有一个二维码,找几个人用微信扫扫就可以自动获取openID ,这时候将参数带入脚本模拟
post即可
另外需要注意:文档中提示的 json 参数格式
注意三:token有效时间为7200,俩小时,需要判断当前发送信息用户的token有效性,同时每天最大可请求次数为2000.
获取token :
#region 获取token,并验证token过期时间 public static string GetAccessToken(string appid, string appSecret) { string token = ""; string requestUrl = string.Format(ConfigBLL.URL_GETACCESSTOKEN, appid, appSecret); string requestResult = WebAPITransfer.Request(requestUrl, "GET", ""); CommonBLL.DebugLog(requestResult, "AccessToken-token-Params"); string[] strArray = requestResult.Split(','); token = strArray[0].Split(':')[1].Replace("\"", ""); return token; } #endregion
以上是"微信开发之微信发送消息的示例分析"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
信息
参数
开发
内容
模型
用户
消息
传输
测试
示例
分析
方法
篇文章
账号
链接
普通
有效
实体
开发者
接口
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
谷歌网络安全部商用产品
软件开发前沿的技术
帮我找一下国家网络安全周视频
数据库接口实例
梦幻西游2022新开服务器
旧服务器改装
数据库建设任务书
高斯服务器
论文数据库分析
网络安全政策法规培训感悟
数据库要素代码是什么
idm有自己的服务器么
数据库部门的属性有什么
如何防诈网络安全知识
网络安全教育进校园绘画
计算机网络技术网络体系结构
网络技术对数学的要求
肇庆市软件开发企业
杭州略成网络技术有限公司
达内软件开发薪水
忠县网络安全和信息中心地址
宜昌公文机器人rpa软件开发
国家网络安全信息网
网络安全2021考研录取分数
建立数据库的目的是
php数据库转换
校园网络安全知识大赛
ftp服务器安全组怎么放行
上海制造软件开发生产过程
云服务器3d游戏几个人