国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

15158846557 在線咨詢 在線咨詢
15158846557 在線咨詢
所在位置: 首頁 > 營銷資訊 > 網(wǎng)站運營 > 手把手教你入門微信公眾號開發(fā)

手把手教你入門微信公眾號開發(fā)

時間:2023-05-30 21:24:02 | 來源:網(wǎng)站運營

時間:2023-05-30 21:24:02 來源:網(wǎng)站運營

手把手教你入門微信公眾號開發(fā):這是一篇關(guān)于微信公眾號開發(fā)的入門指南,較為詳細地介紹了開發(fā)微信公眾號的基本原理,并且有相應(yīng)的代碼實現(xiàn)。如果您正打算要做公眾號開發(fā),卻又苦于找不到一份簡潔明了的入門級教學(xué)文檔,那么這篇博客應(yīng)該能解決您的問題。

緣起

近日騰訊發(fā)布2017年中報,報告中指出,騰訊二季度實現(xiàn)營業(yè)收入566.06億元,經(jīng)營盈利、期內(nèi)盈利分別達到225.6億元和182.54億元。按照當(dāng)前利潤與員工數(shù)估算,騰訊員工的平均年薪達到80萬…
盡管很多人吐槽王者榮耀里的小學(xué)生太坑爹,但不得不承認,近年來騰訊的變現(xiàn)能力確實強大地嚇人。這之中微信和QQ作為用戶的入口,起到了很大的作用。特別是微信,已然是一款裝機必備的全民軟件,如何借助這個龐大的平臺搞點事情,分享下微信帶來的用戶紅利,也就成為一件很值得研究的事。微信公眾號是個人或者企業(yè)的一個宣傳平臺,通過開發(fā)微信公眾號,可以給關(guān)注公眾號的用戶提供更多定制化的服務(wù),進一步可以將服務(wù)轉(zhuǎn)化為效益。本文旨在給正準備做微信公眾號開發(fā)的朋友分享一點經(jīng)驗,從而盡快熟悉微信公眾號開發(fā)的整體流程。在此基礎(chǔ)上可以繼續(xù)去學(xué)習(xí)一些高級的開發(fā)技巧(比如微信支付、賬單系統(tǒng)之類的),讓自己的公眾號更加地精(zhi)美(qian)。

磨刀不誤砍柴工

微信公眾號大家肯定都用過。目前微信公眾號主要分為訂閱號和服務(wù)號,每種賬號又分為未認證和已認證,它們的差別主要在于具有不同的接口權(quán)限,下圖(引用自微信開發(fā)實戰(zhàn)系列)是一些例子:





總體來說,服務(wù)號權(quán)限 > 訂閱號權(quán)限,認證賬號權(quán)限 > 未認證賬號權(quán)限。申請訂閱號比較簡單,服務(wù)號相對復(fù)雜點,另外要認證的話還要額外提交一些材料。我們可以根據(jù)不同的業(yè)務(wù)需求去申請不同類型的賬號,基本上常用的權(quán)限列表已經(jīng)可以滿足大部分的場景。
開發(fā)微信公眾號本質(zhì)上和通常的網(wǎng)站開發(fā)并無區(qū)別。當(dāng)我們進入一個公眾號頁面之后,我們可以向公眾號發(fā)送文字、語音、圖片等消息,也可以通過點擊頁面下方的菜單觸發(fā)相應(yīng)的功能。那么開發(fā)者與微信用戶究竟是怎么進行交互的呢?實際上我們在公眾號里的所有操作,都會發(fā)送到微信的服務(wù)器上,微信服務(wù)器將這些動作的具體含義按照一定的格式進行封裝后,發(fā)送到微信公眾號所對應(yīng)的服務(wù)器上(這個服務(wù)器的地址可以由開發(fā)者在微信公眾號的后臺進行配置),開發(fā)者通過編寫代碼來處理不同的用戶行為,并將處理后的結(jié)果按照一定的格式返回給微信服務(wù)器,再由微信服務(wù)器發(fā)送到微信公眾號里面,從而完成了一次交互過程。在這里借用方倍老師博客中的一張圖片來展示下這個過程,可以幫助大家理解地更清楚:





到這里我們可以知道,所謂的微信公眾號開發(fā),其實就是編寫業(yè)務(wù)代碼來處理用戶的動作請求。這里面會涉及到和微信服務(wù)器之間的通信,也就涉及到一些安全認證方面的知識,后文會通過一個實際的例子進行說明?,F(xiàn)在,就讓我們來看看具體的流程吧。

巧婦難為無米之炊

開發(fā)微信公眾號需要準備以下兩樣食材:

微信公眾號

微信公眾號可以在微信公眾平臺的官網(wǎng)上申請。前文說過,微信公眾號分為幾種類型,不同的類型具有不同的權(quán)限,具體的權(quán)限列表可以查看微信公眾平臺技術(shù)文檔。值得注意的是,現(xiàn)在已經(jīng)不再支持個人類型的公眾賬號申請微信認證。申請的過程無非是填寫下郵箱和信息,建議使用QQ郵箱,畢竟是自家的東西。

服務(wù)器

由于我們的服務(wù)器需要與微信服務(wù)器進行交互,因此必須能夠讓微信服務(wù)器可以訪問到。很多公司都提供了云服務(wù)器租賃,價格不一,可以自行申請,細節(jié)在此不表。如果不想花錢申請,也可以使用一些外網(wǎng)穿透工具,將本地的IP暴露到公網(wǎng)中供外部訪問,具體的工具請自行百度,不過大部分軟件穩(wěn)定性無法保證,而且分配的域名經(jīng)常改變。個人建議還是申請一臺服務(wù)器比較方便,等以后公眾號運營良好開始漲(ying)粉(li)了,這些都不是事~

擼起袖子加油干

以下是詳細步驟:

開啟公眾號開發(fā)者模式

為了讓微信服務(wù)器知道開發(fā)者服務(wù)器的存在,必須在公眾號后臺進行相應(yīng)的配置。
(1) 登錄公眾平臺官網(wǎng),找到左邊功能欄的最下方,有一個基本配置的選項
(2) 點擊基本配置按鈕,在右邊的頁面中填寫服務(wù)器的相關(guān)信息。其中URL填寫http://外網(wǎng)IP:端口號/wx,這里外網(wǎng)IP是服務(wù)器的外網(wǎng)IP地址,端口號固定填寫80。Token可以自由填寫,用于兩個服務(wù)器之間的驗證。具體見下圖:





(3) 點擊提交按鈕,提示配置失敗。這是自然的,因為我們還需要在開發(fā)者服務(wù)器上進行配置,才能完成驗證的過程。
(4) 前面在配置微信公眾號時為什么提示失敗呢?在此我們有必要探究下這個認證過程。當(dāng)我們點擊了提交后,微信服務(wù)器會向我們所填寫的那個URL發(fā)起一個GET請求,并攜帶以下幾個參數(shù):timestamp, nonce, echostr, signature。其中timestamp是一個時間戳,nonce是一個隨機數(shù),echostr也是隨機數(shù),這幾個都很普通,重點在于signature,它的生成方式是將nonce、timestamp和token(也就是我們在網(wǎng)頁中配置的TOKNE)三個字符串按照字典序排序后,對排序后得到的字符串?dāng)?shù)組使用哈希加密算法得到。我們的服務(wù)器在收到這個GET請求后,提取對應(yīng)的參數(shù),并按照前面說的方式生成hashcode,如果這個值與參數(shù)中的signature相同,那么我們就將echostr返回給微信服務(wù)器,否則返回空值。微信服務(wù)器收到這個echostr之后,驗證這個值與它發(fā)送的echostr值是否相同,如果相同,說明這個值的確是由我們的服務(wù)器返回的,從而完成驗證,今后所有的信息就都可以發(fā)送到這個服務(wù)器地址上。這里面涉及到了一些安全認證的相關(guān)知識,有興趣的朋友可以去查閱更詳細的資料。總的來說,就是讓通信的雙方都能夠確認對方的真實身份。以下是認證部分的主要代碼,使用Python2.7和web.py框架編寫:





編寫服務(wù)器業(yè)務(wù)邏輯

前面我們完成了微信服務(wù)器與開發(fā)者服務(wù)器的相互認證過程,接下來我們需要編寫業(yè)務(wù)邏輯代碼來處理微信服務(wù)器發(fā)送過來的信息。以文本消息為例,當(dāng)用戶在公眾號頁面發(fā)送了消息后,微信服務(wù)器會將這條消息封裝成如下的XML格式,并將其作為請求的內(nèi)容向開發(fā)者服務(wù)器發(fā)起一個POST請求:





各個字段的具體含義就如字段名所示,比較直觀。我們首先需要解析這個XML對象,并提取出各個字段用于后續(xù)的處理:





解析之后,我們可以在主函數(shù)中根據(jù)消息的不同類型,來調(diào)用不同的處理函數(shù)得到相應(yīng)的處理結(jié)果,然后我們要將處理結(jié)果封裝成同樣的XML格式返回給微信服務(wù)器,封裝XML對象的代碼如下所示(以文本消息為例):





至此,我們就完成了一個簡單的回復(fù)流程(雖然目前這種只能回復(fù)文本消息==)。

更上一層樓

以上就是一個基本的微信公眾號開發(fā)流程。當(dāng)然,想要讓我們的公眾號變得多姿多彩,需要掌握的內(nèi)容還有很多。比如
(1) access_token:前面我們所做的實際是被動回復(fù)消息,微信服務(wù)器發(fā)起POST請求,我們將處理后的內(nèi)容借由微信服務(wù)器返回給用戶。如果我們需要主動地和用戶進行交互,比如主動地向用戶發(fā)一條消息,我們就需要調(diào)用微信公眾平臺提供的相應(yīng)接口,并且需要主動告訴微信服務(wù)器我們的身份,這是通過access_token實現(xiàn)的。

access_token是微信公眾號的全局唯一接口調(diào)用憑據(jù),公眾號在調(diào)用各個接口時都需要使用access_token。
如上所述,在我們調(diào)用各個接口前,需要先使用公眾號的appidappsecret信息(這兩個值可以從微信公眾號的網(wǎng)頁上查看)向微信服務(wù)器請求獲取access_token,然后帶著這個值去調(diào)用微信公眾平臺提供的接口,實現(xiàn)相應(yīng)的功能。

(2) 微信網(wǎng)頁開發(fā):網(wǎng)頁開發(fā)就是指編寫一系列的HTML5頁面,并在微信公眾號中引導(dǎo)用戶打開我們開發(fā)的頁面,從而實現(xiàn)相關(guān)的業(yè)務(wù)邏輯,這一功能使得公眾號可以像一個內(nèi)嵌在微信當(dāng)中的應(yīng)用一樣,能夠?qū)崿F(xiàn)非常復(fù)雜的交互邏輯,而且相比于通常的應(yīng)用來說更加小巧。

從這里出發(fā)

以上就是本文的主體內(nèi)容。樓主經(jīng)驗尚淺,斗膽提筆撰文,有不當(dāng)之處歡迎各位指出。本文主要是一個入門的簡介,后續(xù)的開發(fā)還有很多內(nèi)容要學(xué),以下列出一些個人認為比較不錯的文檔和資料,樓主也從中學(xué)到了很多,在此感謝各位作者。
(1) 微信公眾平臺技術(shù)文檔
(2) 方培工作室-微信公眾平臺開發(fā)教程
(3) 微信開發(fā)者聯(lián)盟
(4) 微信開發(fā)實戰(zhàn)系列
本文中的代碼已上傳到github,里面包含了微信公眾號一些常用功能的實現(xiàn),僅供參考:微信公眾號開發(fā)示例程序



關(guān)鍵詞:公眾,把手,入門

74
73
25
news

版權(quán)所有? 億企邦 1997-2025 保留一切法律許可權(quán)利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點擊下載Chrome瀏覽器
關(guān)閉