這篇文章主要為大家展示了“微信公眾賬號開發(fā)的示例分析”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“微信公眾賬號開發(fā)的示例分析”這篇文章吧。
創(chuàng)新互聯(lián)專業(yè)提供成都機柜租用服務,為用戶提供五星數(shù)據(jù)中心、電信、雙線接入解決方案,用戶可自行在線購買成都機柜租用服務,并享受7*24小時金牌售后服務。在開始做之前,大家可能對這個很感興趣,但是又比較茫然。是不是很復雜?很難學???
其實恰恰相反,很簡單。為了打消大家的顧慮,先簡單介紹了微信公眾平臺的基本原理。
微信服務器就相當于一個轉發(fā)服務器,終端(手機、Pad等)發(fā)起請求至微信服務器,微信服務器,然后將請求轉發(fā)給自定義服務(這就里就是我們的具體實現(xiàn))。
服務處理完畢,然后揮發(fā)給微信服務器,微信服務器再將具體響應回復到終端。
通信協(xié)議為:HTTP
數(shù)據(jù)格式為:XML
具體的流程如下圖所示:
其實,我們需要做的事情,就是對HTTP請求,做出響應。
具體的請求內容,我們按照特定的XML格式去解析,處理完畢后,也要按照特定的XML格式返回。
我們只需要一個簡單的實現(xiàn)HttpHandler即可。
當然,微信平臺還能實現(xiàn)更加復雜的業(yè)務,比如微信可以作為內嵌的瀏覽器,我們可以通過微信的鏈接,打開htm界面,然后實現(xiàn)自己的邏輯。
注冊地址:http://mp.weixin.qq.com/
1)首先需要郵箱注冊:
2)郵箱激活。郵箱將會收到激活郵件,點擊激活鏈接即可。
3)需要登記個人信息。這里需要提供一些個人信息或者單位信息。
現(xiàn)在個人只允許注冊訂閱號,公司單位才能注冊服務號,服務號比訂閱號,功能更多,可以實現(xiàn)自定義菜單。
需要提供的信息,主要有身份證號碼、本人手持身份證的照片,如果是單位注冊,還需要單位注冊號、營業(yè)執(zhí)照及法人身份證及照片,感覺這個比較變態(tài)。哪個老總愿意讓你給他和他的身份證合張影呢?
注意:
同一個手機號或同一個身份證號只允許注冊兩個微信公眾平臺賬號。
個人信息登記:
企業(yè)用戶
企業(yè)用戶上面的個人信息也要填寫的,只是運營者的個人信息。
政府媒體
4)輸入公眾賬號相關信息了。
在輸入公眾號的名稱和描述時要注意,公眾賬號的名稱是不能編輯的,一旦提交,再不能改,一定要慎重。
注冊需要7天內審核。具體的注冊步驟這里不再贅述。
如果審核通過,可以進行下一步的工作了。如何將我們的服務綁定到公眾賬號呢?
主要是上傳頭像,也可以修改描述信息。不過注意,一個月只能修改一次。 所以,在做一個新的應用時,一定要等到,需求已定,UE也設計好了圖標再處理。
如有修改,只能等一個月了。
3、成為開發(fā)者:
首先關閉編輯模式,開啟開發(fā)模式
這里真正可以綁定我們自己的服務器了。
綁定服務地址和token,服務器地址必須是公網IP,其端口要使用80
token值盡量復雜一點,一旦被人破解,很可能被人利用。
因為,在初次訪問服務器的時候,需要一次身份驗證,這時需要token。而且一經驗證成功,今后不再驗證。
公眾平臺消息接口為開發(fā)者提供了一種新的消息處理方式。
點擊申請,填寫網址url和token,其中token可由開發(fā)者可以任意填寫,用作生成簽名。
公眾平臺用戶提交信息后,微信服務器將發(fā)送GET請求到填寫的URL上,并且?guī)纤膫€參數(shù):
參數(shù) | 描述 |
---|---|
signature | 微信加密簽名 |
timestamp | 時間戳 |
nonce | 隨機數(shù) |
echostr | 隨機字符串 |
開發(fā)者通過檢驗signature對請求進行校驗(下面有校驗方式)。若確認此次GET請求來自微信服務器,請原樣返回echostr參數(shù)內容,則接入生效,否則接入失敗。
signature結合了開發(fā)者填寫的token參數(shù)和請求中的timestamp參數(shù)、nonce參數(shù)。
加密/校驗流程: 1. 將token、timestamp、nonce三個參數(shù)進行字典序排序 2. 將三個參數(shù)字符串拼接成一個字符串進行sha1加密 3. 開發(fā)者獲得加密后的字符串可與signature對比,標識該請求來源于微信
當普通微信用戶向公眾賬號發(fā)消息時,微信服務器將POST該消息到填寫的URL上。結構如下:
1348831860 1234567890123456
參數(shù) | 描述 |
---|---|
ToUserName | 開發(fā)者微信號 |
FromUserName | 發(fā)送方帳號(一個OpenID) |
CreateTime | 消息創(chuàng)建時間 (整型) |
MsgType | text |
Content | 文本消息內容 |
MsgId | 消息id,64位整型 |
1348831860 1234567890123456
參數(shù) | 描述 |
---|---|
ToUserName | 開發(fā)者微信號 |
FromUserName | 發(fā)送方帳號(一個OpenID) |
CreateTime | 消息創(chuàng)建時間 (整型) |
MsgType | image |
PicUrl | 圖片鏈接 |
MsgId | 消息id,64位整型 |
1351776360 23.134521 113.358803 20 1234567890123456
參數(shù) | 描述 |
---|---|
ToUserName | 開發(fā)者微信號 |
FromUserName | 發(fā)送方帳號(一個OpenID) |
CreateTime | 消息創(chuàng)建時間 (整型) |
MsgType | location |
Location_X | 地理位置緯度 |
Location_Y | 地理位置經度 |
Scale | 地圖縮放大小 |
Label | 地理位置信息 |
MsgId | 消息id,64位整型 |
1351776360 1234567890123456
參數(shù) | 描述 |
---|---|
ToUserName | 接收方微信號 |
FromUserName | 發(fā)送方微信號,若為普通用戶,則是一個OpenID |
CreateTime | 消息創(chuàng)建時間 |
MsgType | 消息類型,link |
Title | 消息標題 |
Description | 消息描述 |
Url | 消息鏈接 |
MsgId | 消息id,64位整型 |
事件推送只支持微信4.5版本,目前開啟自定義菜單接口事件推送、關注與取消關注事件推送。其余功能即將開放,敬請期待。
123456789
參數(shù) | 描述 |
---|---|
ToUserName | 接收方微信號 |
FromUserName | 發(fā)送方微信號,若為普通用戶,則是一個OpenID |
CreateTime | 消息創(chuàng)建時間 |
MsgType | 消息類型,event |
Event | 事件類型,subscribe(訂閱)、unsubscribe(取消訂閱)、CLICK(自定義菜單點擊事件) |
EventKey | 事件KEY值,與自定義菜單接口中KEY值對應 |
對于每一個POST請求,開發(fā)者在響應包中返回特定xml結構,對該消息進行響應(現(xiàn)支持回復文本、圖文、語音、視頻、音樂)。
微信服務器在五秒內收不到響應會斷掉連接。
回復xml結構如下:
12345678
參數(shù) | 描述 |
---|---|
ToUserName | 接收方帳號(收到的OpenID) |
FromUserName | 開發(fā)者微信號 |
CreateTime | 消息創(chuàng)建時間 |
MsgType | text |
Content | 回復的消息內容,長度不超過2048字節(jié) |
12345678
參數(shù) | 描述 |
---|---|
ToUserName | 接收方帳號(收到的OpenID) |
FromUserName | 開發(fā)者微信號 |
CreateTime | 消息創(chuàng)建時間 |
MsgType | music |
MusicUrl | 音樂鏈接 |
HQMusicUrl | 高質量音樂鏈接,WIFI環(huán)境優(yōu)先使用該鏈接播放音樂 |
12345678 2
參數(shù) | 描述 |
---|---|
ToUserName | 接收方帳號(收到的OpenID) |
FromUserName | 開發(fā)者微信號 |
CreateTime | 消息創(chuàng)建時間 |
MsgType | news |
ArticleCount | 圖文消息個數(shù),限制為10條以內 |
Articles | 多條圖文消息信息,默認第一個item為大圖 |
Title | 圖文消息標題 |
Description | 圖文消息描述 |
PicUrl | 圖片鏈接,支持JPG、PNG格式,較好的效果為大圖640*320,小圖80*80。 |
Url | 點擊圖文消息跳轉鏈接 |
1.用戶OpenID對一個公眾號是固定的串
2.請使用80端口
以上是“微信公眾賬號開發(fā)的示例分析”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!