.NET 往微信公众号 发送消息

简介: public string gettocken()        {          string url = @"https://qyapi.

public string gettocken()

        {

          string url = @"https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=xxx&corpsecret=rxxY";

            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);

            request.Method = "GET";

            //request.ContentType = "application/x-www-form-urlencoded";

            //request.ContentType = "application/json"; 

            request.ReadWriteTimeout = 30 * 1000;

            HttpWebResponse response = (HttpWebResponse)request.GetResponse();


            StreamReader myStreamReader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);

            var retString = myStreamReader.ReadToEnd();

          // MessageBox.Show(retString);

            JObject jo = JObject.Parse(retString);

            string ss=jo["access_token"].ToString();

            myStreamReader.Close();

            return ss;

        }

        public void Post(string mes)

        {

            StringWriter sw = new StringWriter();

            JsonWriter jwriter = new JsonTextWriter(sw);

            jwriter.WriteStartObject();

            jwriter.WritePropertyName("touser");

            jwriter.WriteValue("user1|user2");

            jwriter.WritePropertyName("toparty");

            jwriter.WriteValue("");

            jwriter.WritePropertyName("totag");

            jwriter.WriteValue("");

            jwriter.WritePropertyName("msgtype");

            jwriter.WriteValue("text");

            jwriter.WritePropertyName("agentid");

            jwriter.WriteValue("1000004");

            jwriter.WriteRaw(",\"text\":{\"content\":\""+mes+"\"}");

            jwriter.WriteEndObject();

            jwriter.Flush();

            string postDataStr = sw.GetStringBuilder().ToString();


          //  ConverttoISO88591(postDataStr);

          // MessageBox.Show(postDataStr);

            ///获取token

            string accesstoken = gettocken();

            ///发送模版消息

            string url = string.Format("https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token={0}", accesstoken);

            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);

            request.Method = "POST";

          // request.ContentType = "application/json";

              request.ContentType = "application/x-www-form-urlencoded";

            request.ContentLength = postDataStr.Length;


            StreamWriter writer = new StreamWriter(request.GetRequestStream(),Encoding.ASCII);

            writer.Write(postDataStr);

            writer.Flush();

            HttpWebResponse response = (HttpWebResponse)request.GetResponse();

            string encoding = response.ContentEncoding;

            if (encoding == null || encoding.Length < 1)

            {

                encoding = "UTF-8"; //默认编码 

            }

            StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.GetEncoding(encoding));

            string retString = reader.ReadToEnd();

        //    MessageBox.Show(retString);


        }

目录
相关文章
|
3月前
|
存储 缓存 JavaScript
自己动手做一个Server酱-cloudflare workers实现通过微信公众号发送消息
自己动手做一个Server酱-cloudflare workers实现通过微信公众号发送消息
216 0
|
3月前
|
小程序 安全 JavaScript
.NET微信网页开发之通过UnionID机制解决多应用用户帐号统一问题
.NET微信网页开发之通过UnionID机制解决多应用用户帐号统一问题
.NET微信网页开发之通过UnionID机制解决多应用用户帐号统一问题
|
3月前
|
开发者
.NET微信网页开发之网页授权获取用户基本信息
.NET微信网页开发之网页授权获取用户基本信息
101 0
|
3月前
|
定位技术 C#
.NET微信网页开发相关文章教程
.NET微信网页开发相关文章教程
|
3月前
|
人工智能 机器人 C#
Windows编程课设(C#)——基于WPF和.net的即时通讯系统(仿微信)
一款参考QQ、微信的即时通讯软件。采用CS结构,客户端基于.Net与WPF开发,服务端使用Java开发。
|
3月前
|
JSON JavaScript 前端开发
全面的.NET微信网页开发之JS-SDK使用步骤、配置信息和接口请求签名生成详解
全面的.NET微信网页开发之JS-SDK使用步骤、配置信息和接口请求签名生成详解
|
3月前
|
JSON 缓存 小程序
.NET生成微信小程序推广二维码
.NET生成微信小程序推广二维码
PyWin32库操作微信自动发送消息
闲得无聊随便练练
105 0
|
开发者
手把手教你微信公众号如何给指定用户发送消息提醒
消息提醒功能是提升用户满意度的最有效方式,基于微信聊天的消息提醒也是现在最常见的消息提醒方式之一,
手把手教你微信公众号如何给指定用户发送消息提醒
|
API C#
直播修仙:使用.NET 的 WebView2 如何获取请求的响应内容,以微信直播的互动直播为例
使用.NET 的 WebView2 如何获取请求的响应内容进行进一步处理
552 0
直播修仙:使用.NET 的 WebView2 如何获取请求的响应内容,以微信直播的互动直播为例