微信開(kāi)發(fā)
服務(wù)號(hào)功能
1、1個(gè)月(自然月)內(nèi)僅可以發(fā)送4條群發(fā)消息。
2、發(fā)給訂閱用戶(粉絲)的消息,會(huì)顯示在對(duì)方的聊天列表中。相對(duì)應(yīng)微信的首頁(yè)。
3、服務(wù)號(hào)會(huì)在訂閱用戶(粉絲)的通訊錄中。通訊錄中有一個(gè)服務(wù)號(hào)的文件夾,點(diǎn)開(kāi)可以查看所有服務(wù)號(hào)。
4、服務(wù)號(hào)可申請(qǐng)自定義菜單。
訂閱號(hào)功能
1、每天(24小時(shí)內(nèi))可以發(fā)送1條群發(fā)消息。
2、發(fā)給訂閱用戶(粉絲)的消息,將會(huì)顯示在對(duì)方的“訂閱號(hào)”文件夾中。點(diǎn)擊兩次才可以打開(kāi)。
3、在訂閱用戶(粉絲)的通訊錄中,訂閱號(hào)將被放入訂閱號(hào)文件夾中。
備注:在微信4.5版本之前申請(qǐng)的訂閱號(hào)可以有一次機(jī)會(huì)升級(jí)到服務(wù)號(hào),新注冊(cè)的微信公眾平臺(tái)賬號(hào)在注冊(cè)到第四步的時(shí)候有一個(gè)選擇類型讓你選擇訂閱號(hào)或者服務(wù)號(hào),這個(gè)一旦選擇就不可以改變了,一定要確定好,作為企業(yè)推薦選擇服務(wù)號(hào),因?yàn)楹笃趯?duì)服務(wù)號(hào)騰訊會(huì)有一些高級(jí)接口開(kāi)放,企業(yè)可以更好的利用公眾平臺(tái)服務(wù)你的客戶。如:指尖上的生活
個(gè)人申請(qǐng),只能申請(qǐng)訂閱號(hào)。
訂閱號(hào)與服務(wù)號(hào)的主要區(qū)別
訂閱號(hào)每天能群發(fā)一條消息,沒(méi)有自定義菜單及高級(jí)接口權(quán)限;服務(wù)號(hào)有自定義菜單及高級(jí)接口權(quán)限,但每月只能群發(fā)一條消息。
微信5.0發(fā)布
2013年8月5日,伴隨著微信5.0 iPhone版的發(fā)布,公眾平臺(tái)也進(jìn)行了重要的更新,主要包括:
1)運(yùn)營(yíng)主體為組織,可選擇成為服務(wù)號(hào)或者訂閱號(hào);
2)服務(wù)號(hào)可以申請(qǐng)自定義菜單;
3)使用QQ登錄的公眾號(hào),可以升級(jí)為郵箱登錄;
4)使用郵箱登錄的公眾號(hào),可以修改登錄郵箱;
5)編輯圖文消息可選填作者;
6)群發(fā)消息可以同步到騰訊微博。
其中,大家議論最多的當(dāng)屬前兩條,就是關(guān)于帳號(hào)類型和自定義菜單的更新,我這里做幾點(diǎn)補(bǔ)充說(shuō)明:
1)目前公眾號(hào)類型分為兩種:服務(wù)號(hào)和訂閱號(hào),8月5日平臺(tái)更新后所有的帳號(hào)默認(rèn)為訂閱號(hào),有一次轉(zhuǎn)換成服務(wù)號(hào)的機(jī)會(huì);
2)服務(wù)號(hào)主要面向企業(yè)、政府和其他組織,而訂閱號(hào)主要面向媒體和個(gè)人;
3)只有服務(wù)號(hào)可以申請(qǐng)自定義菜單,訂閱號(hào)不能申請(qǐng);
4)服務(wù)號(hào)每月只能群發(fā)一條消息,而訂閱號(hào)每天能群發(fā)一條消息。
平臺(tái)更新后,讓很多人糾結(jié)的是自定義菜單和每天群發(fā)一條消息不可兼得。
需求
學(xué)院需求
提供查詢服務(wù)
- 課表
- 成績(jī)
- 學(xué)院最新動(dòng)態(tài)
- 公告通知
加強(qiáng)與本學(xué)院同學(xué)的溝通
- 提供學(xué)生與老師溝通的平臺(tái)
通過(guò)溝通了解學(xué)生的需求,有利于更好的學(xué)院發(fā)展
學(xué)生需求
- 現(xiàn)在的大學(xué)生,網(wǎng)上的一代,手機(jī)控的一代,想要追求便捷的生活。他們對(duì)于信息的獲取,更希望通過(guò)新興媒體,像微信這樣的通訊工具。
通過(guò)需求可知學(xué)院應(yīng)該選擇服務(wù)號(hào)
看例子(無(wú)圖無(wú)真相)
看商學(xué)院做好例子(這個(gè)是訂閱號(hào),是以前申請(qǐng)的所以有自定義菜單)
魚(yú)和熊掌不可兼得,可是早申請(qǐng)的就能兼得,他就是一個(gè)例子,所以凡事還是得下手早




微信5.0后的訂閱號(hào)

微信5.0后的服務(wù)號(hào)



微信公眾平臺(tái)支持哪些編程語(yǔ)言?應(yīng)該如何選擇
凡是支持動(dòng)態(tài)Web開(kāi)發(fā)的編程語(yǔ)言都能夠用于微信公眾平臺(tái)開(kāi)發(fā),例如:Java、PHP、ASP.NET、Ruby、Python、Note.js等。
開(kāi)者人員應(yīng)該選擇自己最擅長(zhǎng)的編程語(yǔ)言進(jìn)行開(kāi)發(fā),如果都不擅長(zhǎng)怎么辦?如果都不擅長(zhǎng),建議選擇Java或PHP,原因在于網(wǎng)上關(guān)于微信公眾平臺(tái)開(kāi)發(fā)的資料大都是基于Java和PHP的,開(kāi)發(fā)起來(lái)要相對(duì)容易。
使用Java進(jìn)行微信公眾平臺(tái)開(kāi)發(fā)至少需要掌握哪些內(nèi)容
至少需要掌握J(rèn)ava基礎(chǔ)知識(shí)、JSP、Servlet、Javabean和JDBC(操作數(shù)據(jù)庫(kù))
微信上微網(wǎng)站的解釋
微網(wǎng)站本質(zhì)上就是以微信瀏覽器為入口的手機(jī)網(wǎng)站(Web APP),能夠兼容Android、iOS、WP等操作系統(tǒng)。開(kāi)發(fā)微網(wǎng)站用到的技術(shù)與開(kāi)發(fā)普通網(wǎng)站一樣,都是基于HTML(HTML5)、CSS、Javascript等,所以有普通網(wǎng)站開(kāi)發(fā)經(jīng)驗(yàn)的開(kāi)發(fā)者,完全有能力開(kāi)發(fā)微網(wǎng)站。
公眾平臺(tái)開(kāi)發(fā)接口介紹
公眾平臺(tái)是為微信用戶提供服務(wù)的平臺(tái),而公眾平臺(tái)開(kāi)發(fā)接口則是提供服務(wù)的基礎(chǔ),開(kāi)發(fā)者在公眾平臺(tái)網(wǎng)站中創(chuàng)建公眾號(hào)、獲取接口權(quán)限后,可以通過(guò)閱讀本接口文檔來(lái)幫助開(kāi)發(fā)。
公眾平臺(tái)開(kāi)發(fā)接口提供與用戶進(jìn)行消息交互、自定義菜單交互的能力。對(duì)于成功接入公眾平臺(tái)開(kāi)發(fā)接口的公眾賬號(hào),當(dāng)用戶發(fā)消息給公眾號(hào),微信公眾平臺(tái)服務(wù)器會(huì)使用http請(qǐng)求對(duì)接入的網(wǎng)址進(jìn)行消息推送,第三方服務(wù)器可通過(guò)響應(yīng)包回復(fù)特定結(jié)構(gòu),從而達(dá)到回復(fù)消息的目的
微信公共平臺(tái)服務(wù)器
先上圖

這是本地的服務(wù)器與微信服務(wù)器之間數(shù)據(jù)傳送(get/put)
開(kāi)發(fā)者主要是在本地服務(wù)器上進(jìn)行部署。
下面這是我對(duì)消息推送處理的理解

接口信息
待資料補(bǔ)全后,再次點(diǎn)擊“成為開(kāi)發(fā)者”,這時(shí)將看到接口配置信息界面,如下圖所示:

這里需要填寫(xiě)URL和Token兩個(gè)值。URL指的是能夠接收處理微信服務(wù)器發(fā)送的GET/POST請(qǐng)求的地址,并且是已經(jīng)存在的,現(xiàn)在就能夠在瀏覽器訪問(wèn)到的地址,這就要求我們先把公眾帳號(hào)后臺(tái)處理程序開(kāi)發(fā)好(至少應(yīng)該完成了對(duì)GET請(qǐng)求的處理)并部署在公網(wǎng)服務(wù)器上。
開(kāi)發(fā)接口信息
公眾平臺(tái)開(kāi)發(fā)接口提供與用戶進(jìn)行消息交互、自定義菜單交互的能力。對(duì)于成功接入公眾平臺(tái)開(kāi)發(fā)接口的公眾賬號(hào),當(dāng)用戶發(fā)消息給公眾號(hào),微信公眾平臺(tái)服務(wù)器會(huì)使用http請(qǐng)求對(duì)接入的網(wǎng)址進(jìn)行消息推送,第三方服務(wù)器可通過(guò)響應(yīng)包回復(fù)特定結(jié)構(gòu),從而達(dá)到回復(fù)消息的目的。
網(wǎng)址接入

具體細(xì)節(jié)可參微信開(kāi)發(fā)API文檔
服務(wù)器應(yīng)該滿足
- web開(kāi)發(fā)服務(wù)器
- 能夠解析常用的動(dòng)態(tài)Web開(kāi)發(fā)的編程語(yǔ)言例如:Java、PHP、asp.net、jsp等。
- 需要支持學(xué)院一些信息的存儲(chǔ),而不是存儲(chǔ)在微信服務(wù)器上,本地化的存儲(chǔ)有利于加快信息的訪問(wèn)速度,對(duì)用戶的體驗(yàn)有益。
服務(wù)器的配置
開(kāi)始我考慮的是LAMP+tomcat+mono組合(個(gè)人比較喜歡開(kāi)源文化,應(yīng)此傾向于此組合)
LAMP介紹
LAMP指的Linux(操作系統(tǒng))、ApacheHTTP 服務(wù)器,MySQL(有時(shí)也指MariaDB,數(shù)據(jù)庫(kù)軟件) 和PHP(有時(shí)也是指Perl或Python) 的第一個(gè)字母,一般用來(lái)建立web 服務(wù)器。
雖然這些開(kāi)放源代碼程序本身并不是專門(mén)設(shè)計(jì)成同另幾個(gè)程序一起工作的,但由于它們的免費(fèi)和開(kāi)源,這個(gè)組合開(kāi)始流行(大多數(shù)Linux發(fā)行版本捆綁了這些軟件)。當(dāng)一起使用的時(shí)候,它們表現(xiàn)的像一個(gè)具有活力的解決方案包。
Web服務(wù)器、緩存和PHP加速
Apache是LAMP架構(gòu)最核心的Web Server,開(kāi)源、穩(wěn)定、模塊豐富是Apache的優(yōu)勢(shì)。但Apache的缺點(diǎn)是有些臃腫,內(nèi)存和CPU開(kāi)銷(xiāo)大,性能上有損耗,不如一些輕量級(jí)的Web 服務(wù)器(例如nginx)高效,輕量級(jí)的Web服務(wù)器對(duì)于靜態(tài)文件的響應(yīng)能力來(lái)說(shuō)遠(yuǎn)高于Apache服務(wù)器。
Apache做為Web Server是負(fù)載PHP的最佳選擇,如果流量很大的話,可以采用nginx來(lái)負(fù)載非PHP的Web請(qǐng)求。nginx是一個(gè)高性能的HTTP和反向代理服 務(wù)器,Nginx以它的穩(wěn)定性、豐富的功能集、示例配置文件和低系統(tǒng)資源的消耗而聞名。Nginx不支持PHP和CGI等動(dòng)態(tài)語(yǔ)言,但支持負(fù)載均衡和容 錯(cuò),可和Apache配合使用,是輕量級(jí)的HTTP服務(wù)器的首選。
Web服務(wù)器的緩存也有多種方案,Apache提供了自己的緩存模 塊,也可以使用外加的Squid模塊進(jìn)行緩存,這兩種方式均可以有效的提高Apache的訪問(wèn)響應(yīng)能力。Squid Cache是一個(gè)Web緩存服務(wù)器,支持高效的緩存,可以作為網(wǎng)頁(yè)服務(wù)器的前置cache服務(wù)器緩存相關(guān)請(qǐng)求來(lái)提高Web服務(wù)器的速度,把Squid放在 Apache的前端來(lái)緩存Web服務(wù)器生成的動(dòng)態(tài)內(nèi)容,而Web應(yīng)用程序只需要適當(dāng)?shù)卦O(shè)置頁(yè)面實(shí)效時(shí)間即可。如訪問(wèn)量巨大則可考慮使用memcache作 為分布式緩存。
PHP的加速使用eAccelerator加速器,eAccelerator是一個(gè)自由開(kāi)放源碼PHP加速器,優(yōu)化和動(dòng) 態(tài)內(nèi)容緩存,提高了性能PHP腳本的緩存性能,使得PHP腳本在編譯的狀態(tài)下,對(duì)服務(wù)器的開(kāi)銷(xiāo)幾乎完全消除。它還有對(duì)腳本起優(yōu)化作用,以加快其執(zhí)行效率。 使PHP程序代碼執(zhí)效率能提高1-10倍。
總的來(lái)說(shuō),LAMP架構(gòu)的網(wǎng)站性能會(huì)遠(yuǎn)遠(yuǎn)優(yōu)于Windows IIS + ASP + Access可以負(fù)載的訪問(wèn)量也非常大,國(guó)內(nèi)的大量個(gè)人網(wǎng)站如果想要支撐大訪問(wèn)量,采用LAMP架構(gòu)是一個(gè)不錯(cuò)的方案。
綜上所述,基于LAMP架構(gòu)設(shè)計(jì)具有成本低廉、部署靈活、快速開(kāi)發(fā)、安全穩(wěn)定等特點(diǎn),是Web網(wǎng)絡(luò)應(yīng)用和環(huán)境的優(yōu)秀組合。
tomcat介紹(用它來(lái)解析jsp)
因?yàn)門(mén)omcat 技術(shù)先進(jìn)、性能穩(wěn)定,而且免費(fèi),因而深受Java 愛(ài)好者的喜愛(ài)并得到了部分軟件開(kāi)發(fā)商的認(rèn)可,成為目前比較流行的Web 應(yīng)用服務(wù)器。
Tomcat 服務(wù)器是一個(gè)免費(fèi)的開(kāi)放源代碼的Web 應(yīng)用服務(wù)器,屬于輕量級(jí)應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問(wèn)用戶不是很多的場(chǎng)合下被普遍使用,是開(kāi)發(fā)和調(diào)試JSP 程序的首選。對(duì)于一個(gè)初學(xué)者來(lái)說(shuō),可以這樣認(rèn)為,當(dāng)在一臺(tái)機(jī)器上配置好Apache 服務(wù)器,可利用它響應(yīng)對(duì)HTML(標(biāo)準(zhǔn)通用標(biāo)記語(yǔ)言下的一個(gè)應(yīng)用。)頁(yè)面的訪問(wèn)請(qǐng)求。實(shí)際上Tomcat 部分是Apache 服務(wù)器的擴(kuò)展,但它是獨(dú)立運(yùn)行的,所以當(dāng)你運(yùn)行tomcat 時(shí),它實(shí)際上作為一個(gè)與Apache 獨(dú)立的進(jìn)程單獨(dú)運(yùn)行的。
訣竅是,當(dāng)配置正確時(shí),Apache 為HTML頁(yè)面服務(wù),而Tomcat 實(shí)際上運(yùn)行JSP 頁(yè)面和Servlet。另外,Tomcat和IIS等Web服務(wù)器一樣,具有處理HTML頁(yè)面的功能,另外它還是一個(gè)Servlet和JSP容器,獨(dú)立的Servlet容器是Tomcat的默認(rèn)模式。不過(guò),Tomcat處理靜態(tài)HTML的能力不如Apache服務(wù)器。
mono介紹(用它來(lái)解析asp.net)
moon是Novell公司開(kāi)發(fā)的跨平臺(tái)·NET運(yùn)行環(huán)境
Mono 是一個(gè)由Novell 公司主持的項(xiàng)目。該項(xiàng)目的目標(biāo)是創(chuàng)建一系列符合ECMA 標(biāo)準(zhǔn)(Ecma-334 和Ecma-335)的.NET 工具,包括C# 編譯器和共通語(yǔ)言執(zhí)行平臺(tái)。與微軟的.NET Framework 不同,Mono 項(xiàng)目不僅可以運(yùn)行于Windows 系統(tǒng)上,還可以運(yùn)行于Linux,F(xiàn)reeBSD,Unix,Mac OS X 和Solaris。
第二方案
對(duì)于第一方案,執(zhí)行過(guò)程,相當(dāng)麻煩,對(duì)于mono的配置出錯(cuò),還有兩者對(duì)于jsp和asp.net的解析也不太好,整體過(guò)于臃腫,考慮到服務(wù)器以后的維護(hù),決定放棄第一方案,采用Windows IIS+ASP+MySQL+tomcat
采用tomcat和iis服務(wù)器集成來(lái)解析jsp
這個(gè)方案實(shí)施起來(lái)相對(duì)簡(jiǎn)單。一切都是傻瓜似的操作
整體架構(gòu)部署在windows server 2008 R2系統(tǒng)上,安裝過(guò)程相對(duì)簡(jiǎn)單,主要是配置過(guò)程有點(diǎn)難度,具體配置過(guò)程在這里就不贅述了,在以后的文檔中會(huì)有詳細(xì)的記錄。
自定義菜單申請(qǐng)到了,到底該怎么創(chuàng)建、怎么使用。
自定義菜單的創(chuàng)建步驟
1、找到AppId和AppSecret。自定義菜單申請(qǐng)成功后,在“高級(jí)功能”-“開(kāi)發(fā)模式”-“接口配置信息”的最后兩項(xiàng)就是;
2、根據(jù)AppId和AppSecret,以https get方式獲取訪問(wèn)特殊接口所必須的憑證access_token;
3、根據(jù)access_token,將json格式的菜單數(shù)據(jù)通過(guò)https post方式提交。
分析創(chuàng)建菜單的難點(diǎn)
- 首先,第1步肯定都沒(méi)有問(wèn)題,只要成功申請(qǐng)了自定義菜單,一定能拿到AppId和AppSecret這兩個(gè)值。
- 再來(lái)看第2步,由于是get方式獲取access_token,簡(jiǎn)單的辦法是直接把ping好的url放在瀏覽器里執(zhí)行,access_token就拿到了。
- 最后再看第3步,拼裝json格式的菜單數(shù)據(jù),雖然繁鎖一點(diǎn),但基本上也都沒(méi)有什么問(wèn)題的,因?yàn)楣俜浇o了個(gè)例子,照貓畫(huà)虎就行了。那問(wèn)題一定就出現(xiàn)在https post提交上了。
這里要好好仔細(xì)閱讀通用接口文檔