如何使用JavaScript給微信用戶發(fā)送消息-創(chuàng)新互聯(lián)

這篇文章給大家分享的是有關如何使用JavaScript給微信用戶發(fā)送消息的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

成都創(chuàng)新互聯(lián)公司主營舒城網(wǎng)站建設的網(wǎng)絡公司,主營網(wǎng)站建設方案,重慶APP軟件開發(fā),舒城h5小程序設計搭建,舒城網(wǎng)站營銷推廣歡迎舒城等地區(qū)企業(yè)咨詢

具體實現(xiàn)

我們登陸微信公眾號的控制臺后,點開發(fā)-> 基本配置:

如何使用JavaScript給微信用戶發(fā)送消息

能看到我們配置的微信消息服務器的地址。在我第一篇教程里講到,我們在本地用nodejs開發(fā)一個Web服務器,然后部署到您喜歡的云平臺,比如騰訊云,阿里云,百度云等等(我選的是云平臺Heroku),然后把部署后應用的url維護到微信公眾號控制臺的服務器配置,如下圖所示。維護好之后,微信用戶關注該公眾號或者給該公眾號發(fā)送的消息,就會通過微信平臺投遞到您的nodejs應用,我們在里面就可以編程實現(xiàn)一些需求了。下文將該nodejs應用稱為“消息服務器”。

如何使用JavaScript給微信用戶發(fā)送消息

我們首先用nodejs的express module獲得一個app對象:

var express = require('express');var app = express();

當有微信用戶關注您的公眾號時,微信平臺會發(fā)送一個HTTP post請求到您的消息服務器。您需要編程響應這個post請求。

app.route('/').post(function(req,res){    var content;    // 把微信平臺發(fā)送的HTTP post的內容存儲到變量content里
    req.on("data",function(data){
        content = data.toString("utf-8");
    }
    );
    req.on("end",function(){        console.log("new http post: " + content );        // 打印HTTP post請求,做調試用

// 從微信平臺發(fā)送的HTTP請求里解析出事件對象。如果是粉絲點關注,事件類型為subscribe。

var msgType = formattedValue(getXMLNodeValue('MsgType', content));// 有粉絲點了關注按鈕啦if( event === "subscribe"){    // 回復一條歡迎消息給粉絲
    var replyxml = replyMessage(content, "歡迎歡迎,終于等到您了!");
    res.send(replyxml);
     }
}

上述代碼邏輯很清晰,看注釋都易懂。關鍵就是如何把歡迎消息回復給點了關注按鈕的粉絲。

核心邏輯在replyMessage函數(shù)里,這個函數(shù)的任務是將粉絲的openID從微信平臺發(fā)給消息服務器的HTTP post內容中解析出來。代碼如下:

輸入?yún)?shù)1: 微信平臺發(fā)給消息服務器的HTTP post全部內容

輸入?yún)?shù)2:準備給粉絲推送的歡迎消息

輸出參數(shù):準備通過HTTP返回給粉絲的歡迎消息的微信報文,需符合微信定義的消息規(guī)范,具體規(guī)范如下代碼所示。

module.exports = function(originalBody, contentToReply){    // 從原始報文里提取出消息的接收方
    var ToUserName = getXMLNodeValue('ToUserName', originalBody);    // 從原始報文里提取出消息的發(fā)送方
    var FromUserName = getXMLNodeValue('FromUserName',originalBody);    var CreateTime = getXMLNodeValue('CreateTime',originalBody);    // 告訴微信平臺這條消息的類型是文本消息
    var MsgType = "<![CDATA[text]]>";    // 準備將歡迎消息的文字內容加入消息報文
    var Content = contentToReply;    // 開始拼裝準備發(fā)送給微信粉絲的消息報文
    var xml = '<xml><ToUserName>'+FromUserName+'</ToUserName><FromUserName>'+ToUserName+'</FromUserName><CreateTime>'+CreateTime+'</CreateTime><MsgType>'
    + MsgType + '</MsgType><Content>'+Content+'</Content></xml>';    console.log("xml to be sent: " + xml);    // 打印消息報文
    return xml;    // 返回消息報文}
;

感謝各位的閱讀!關于“如何使用JavaScript給微信用戶發(fā)送消息”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

文章名稱:如何使用JavaScript給微信用戶發(fā)送消息-創(chuàng)新互聯(lián)
分享地址:http://muchs.cn/article42/hocec.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供關鍵詞優(yōu)化、ChatGPT、網(wǎng)站設計、小程序開發(fā)微信公眾號、搜索引擎優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設