關鍵字:微信公眾平台開發
作者:方倍工作室
出處:http://www.cnblogs.com/txw1958/p/wechat-tutorial.html
在這篇微信公眾平台開發教程中,我們假定你已經有了PHP語言程序、MySQL數據庫、計算機網絡通訊、及HTTP/XML/CSS/JS等基礎。
我們將使用微信公眾賬號方倍工作室作為講解的例子,二維碼見底部。
本系列教程將引導你完成如下任務:
- 申請百度雲平台資源
- 啟用微信公眾平台開發模式
BAE已經不再提供免費的2.0版本,下述申請空間的方法已經失效,
請查看使用新浪SAE申請空間的教程,地址為 http://www.cnblogs.com/txw1958/p/wechat-tutorial.html
第一篇 申請服務器資源
創建百度雲應用
申請賬號
登錄http://developer.baidu.com/bae ,使用郵箱或者手機注冊一個賬號,注冊需要同時綁定手機並且驗證郵箱。
創建應用
注冊並登錄成功以后,點擊右上側的,彈出如下窗口。
應用名稱自己隨便填寫一個,接入方式選擇“手機web應用”,然后點擊確定。
說明:在以下的教程中,您可以將所有我填寫為pondbay的地方改為你的一個相應的名稱,如果您沒有想好名稱,最簡單的方法就是qq這兩個字符+qq號碼,比如方倍工作室的QQ是1354386063,那么就將"pondbay"改為"qq1354386063"
選擇“雲環境(BAE)”,
在新的窗口中,填寫應用域名的名稱,環境類型選擇PHP,其他根據自己需要選擇或者使用上圖默認值,然后點擊確定
注意:此處填寫的域名將要在下面填寫URL時用到。可以先保存下來。
原文:http://www.cnblogs.com/txw1958/p/wechat-tutorial.html
創建版本
在版本管理中,點擊創建新版本
版本號填寫0,然后保存。
原文:http://www.cnblogs.com/txw1958/p/wechat-tutorial.html
上傳代碼
將以下代碼中的token改為你的名稱,並另存為index.php。
注意:此處填寫的Token將要在下面填寫URL時用到。可以先保存下來。
<?php /* 方倍工作室 http://www.cnblogs.com/txw1958/ CopyRight 2013 www.doucube.com All Rights Reserved */ define("TOKEN", "pondbay"); $wechatObj = new wechatCallbackapiTest(); if (isset($_GET['echostr'])) { $wechatObj->valid(); }else{ $wechatObj->responseMsg(); } class wechatCallbackapiTest { public function valid() { $echoStr = $_GET["echostr"]; if($this->checkSignature()){ echo $echoStr; exit; } } private function checkSignature() { $signature = $_GET["signature"]; $timestamp = $_GET["timestamp"]; $nonce = $_GET["nonce"]; $token = TOKEN; $tmpArr = array($token, $timestamp, $nonce); sort($tmpArr); $tmpStr = implode( $tmpArr ); $tmpStr = sha1( $tmpStr ); if( $tmpStr == $signature ){ return true; }else{ return false; } } public function responseMsg() { $postStr = $GLOBALS["HTTP_RAW_POST_DATA"]; if (!empty($postStr)){ $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA); $fromUsername = $postObj->FromUserName; $toUsername = $postObj->ToUserName; $keyword = trim($postObj->Content); $time = time(); $textTpl = "<xml> <ToUserName><![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[%s]]></FromUserName> <CreateTime>%s</CreateTime> <MsgType><![CDATA[%s]]></MsgType> <Content><![CDATA[%s]]></Content> <FuncFlag>0</FuncFlag> </xml>"; if($keyword == "?" || $keyword == "?") { $msgType = "text"; $contentStr = date("Y-m-d H:i:s",time()); $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr); echo $resultStr; } }else{ echo ""; exit; } } } ?>
然后將其壓縮成ZIP格式,不能用RAR格式
這樣會生成一個index.zip的文件。
回來版本管理中
選擇包上傳更新
選擇剛才壓縮好的zip包,點擊上傳。
確定生效,並且點擊 ,點擊后如下圖。
百度雲應用的創建就成功了。
第二篇 啟用開發模式
微信公眾平台開發模式
高級功能
微信公眾平台地址:https://mp.weixin.qq.com
登錄微信公眾平台后台,選擇高級功能,進入后就看到兩種模式
我們需要先關閉編輯模式。點擊編輯模式的進入
滑動關閉
開發模式
進入開發模式里面
點擊成為開發者
彈出URL和Token填寫框
此處的URL為創建百度雲應用的域名,包括后面的duapp.com,而Token為index.php中定義的值。在這篇教程中如下:
URL: http://pondbay.duapp.com
Token: pondbay
填寫如下圖,
提交成功
再滑動右上角啟用按鈕。
恭喜,你成功啟用開發模式。
自動回復
在上面的例子中,實現了一個發送“?”就能回復當前時間的功能。
效果如下:
至此,你的微信公眾平台賬號已經實現自動回復了。
關於百度BAE
BAE已經不再提供免費的2.0版本,上述申請空間的方法已經失效,請查看使用新浪SAE申請空間的教程。鏈接:http://www.cnblogs.com/txw1958/p/wechat-tutorial.html。