微信公众号发送消息模板

private static void SendInfo(QuestionInfoDto dto)
{
string strAppid = "----------";//appId
string strSecret = "---------"//Secret;
#region 获取accesstoken
string strRequestTokenUrl = " https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" + strAppid + "&secret=" + strSecret;
string strResult = instance.GetFunction(strRequestTokenUrl);
JObject job = JObject.Parse(strResult);
string strAccessToken = job["access_token"] + "";
#endregion

        string strSendTemplateMsg = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=" + strAccessToken;
        string strDataTemplateMsg = @"{""touser"":""" + dto.WXOpenId + @""",""template_id"":""模板Id"", ""url"":"""+dto.QuestionnaireUrl+@""", ""topcolor"":""#FF0000"",""data"":{ ""first"":{""value"":"""+dto.MessageContent+@""",""color"":""#173177""}, ""keyword1"":{""value"":"""+dto.CreateUserName+@""",""color"":""#173177""},""keyword2"":{""value"":"""+dto.BeginTime.ToShortDateString()+"至"+dto.EndTime.ToShortDateString()+@""",""color"":""#173177""},""remark"":{""value"":""有情参加调差问卷。"",""color"":""#173177""}}}";
        string strResult002 = instance.PostFunction(strSendTemplateMsg, strDataTemplateMsg);
    }
    private string GetFunction(string strUrl)
    {

        string serviceAddress = strUrl;
        HttpWebRequest request = (HttpWebRequest)WebRequest.Create(serviceAddress);
        request.Method = "GET";
        request.ContentType = "text/html;charset=UTF-8";
        HttpWebResponse response = (HttpWebResponse)request.GetResponse();
        Stream myResponseStream = response.GetResponseStream();
        StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.UTF8);
        string retString = myStreamReader.ReadToEnd();
        myStreamReader.Close();
        myResponseStream.Close();
        return retString;
    }
    private string PostFunction(string strUrl, string strData)
    {

        string serviceAddress = strUrl;
        HttpWebRequest request = (HttpWebRequest)WebRequest.Create(serviceAddress);

        request.Method = "POST";
        request.ContentType = "application/json";
        string strContent = strData;
        using (StreamWriter dataStream = new StreamWriter(request.GetRequestStream()))
        {
            dataStream.Write(strContent);
            dataStream.Close();
        }
        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();

        return retString;
    }
posted @ 2021-05-11 15:31  cv玲玲  阅读(382)  评论(0)    收藏  举报