国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

微信公眾平臺開發嘗試

2019-11-15 02:09:21
字體:
來源:轉載
供稿:網友
微信公眾平臺開發嘗試

最近看了一篇博文是說微信公眾平臺搭建,于是心血來潮自己也嘗試了一下。

1.不用多講了,申請微信公眾號,對于個人來說,只能申請訂閱號。

可以看這個鏈接的文章,http://jingyan.baidu.com/article/414eccf6011ff06b431f0aec.html

2.采用的是Sina App Engine來脫管服務,就要申請sae開發者權限。

再看這個鏈接http://jingyan.baidu.com/article/4f7d57129a60531a20192796.html

3.在sae上新建一個應用

我選擇的php,PHP幾乎免費。java應用的話,有點小貴了。

雖然沒有學過PHP,摸著石頭過河吧。

將php代碼上傳后,就有一個可調試的url了,PHP代碼后面上。

4.再在微信公眾平臺中的開發者中心(這個要經過一段時間的審核),填入一下內容即可

5.然后就是對接數據了,為了測試,我對接的是圖靈機器人的數據、12306和百度地圖API

12306是為了查余票和車次,百度地圖API是為了查天氣預報、圖靈機器人見鏈接:http://www.tuling123.com/openapi/

php代碼如下,本人不是搞PHP的,因此只能在網上拷貝了,如有復制,純屬巧合。

<?php        define("TOKEN", "weixin");    session_start();    Session_Register("kw");    $wechatObj = new wechatCallbackapiTest();    require_once("train.php");    $tqTpl = "<xml> <ToUserName><![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[%s]]></FromUserName> <CreateTime>%s</CreateTime> <MsgType><![CDATA[%s]]></MsgType> <ArticleCount>5</ArticleCount> <Articles> <item> <Title><![CDATA[%s]]></Title> <Description><![CDATA[%s]]></Description> <PicUrl><![CDATA[%s]]></PicUrl> <Url><![CDATA[%s]]></Url> </item> <item> <Title><![CDATA[%s]]></Title> <Description><![CDATA[%s]]></Description> <PicUrl><![CDATA[%s]]></PicUrl> <Url><![CDATA[%s]]></Url> </item> <item> <Title><![CDATA[%s]]></Title> <Description><![CDATA[%s]]></Description> <PicUrl><![CDATA[%s]]></PicUrl> <Url><![CDATA[%s]]></Url> </item> <item> <Title><![CDATA[%s]]></Title> <Description><![CDATA[%s]]></Description> <PicUrl><![CDATA[%s]]></PicUrl> <Url><![CDATA[%s]]></Url> </item> <item> <Title><![CDATA[%s]]></Title> <Description><![CDATA[%s]]></Description> <PicUrl><![CDATA[%s]]></PicUrl> <Url><![CDATA[%s]]></Url> </item> <item> <Title><![CDATA[%s]]></Title> <Description><![CDATA[%s]]></Description> <PicUrl><![CDATA[%s]]></PicUrl> <Url><![CDATA[%s]]></Url> </item> </Articles> </xml> ";    if (!isset($_GET['echostr'])) {        $wechatObj->responseMsg();    }else{        $wechatObj->valid();    }    class wechatCallbackapiTest    {        //驗證簽名        public function valid()        {            $echoStr = $_GET["echostr"];            $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){                echo $echoStr;                exit;            }        }        //響應消息        public function responseMsg()        {            $postStr = $GLOBALS["HTTP_RAW_POST_DATA"];            if (!empty($postStr)){                $this->logger("R ".$postStr);                $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);                $RX_TYPE = trim($postObj->MsgType);                                 //消息類型分離                switch ($RX_TYPE)                {                    case "event":                        $result = $this->receiveEvent($postObj);                        break;                    case "text":                        $result = $this->receiveTulingText($postObj);                        break;                    case "image":                        $result = $this->receiveImage($postObj);                        break;                    case "location":                        $result = $this->receiveLocation($postObj);                        break;                    case "voice":                        $result = $this->receiveVoice($postObj);                        break;                    case "video":                        $result = $this->receiveVideo($postObj);                        break;                    case "link":                        $result = $this->receiveLink($postObj);                        break;                    default:                        $result = "unknown msg type: ".$RX_TYPE;                        break;                }                $this->logger("T ".$result);                echo $result;            }else {                echo "";                exit;            }        }        //接收事件消息        PRivate function receiveEvent($object)        {            $content = "";            switch ($object->Event)            {                case "subscribe":                    $content = "歡迎關注TomSnail ";                    $content .= (!empty($object->EventKey))?("/n來自二維碼場景 ".str_replace("qrscene_","",$object->EventKey)):"";                    break;                case "unsubscribe":                    $content = "取消關注";                    break;                case "SCAN":                    $content = "掃描場景 ".$object->EventKey;                    break;                case "CLICK":                    switch ($object->EventKey)                    {                        case "COMPANY":                            $content = array();                            $content[] = array("Title"=>"多圖文1標題", "Description"=>"", "PicUrl"=>"http://discuz.comli.com/weixin/weather/icon/cartoon.jpg", "Url" =>"http://m.VEVb.com/?u=txw1958");                            break;                        default:                            $content = "點擊菜單:".$object->EventKey;                            break;                    }                    break;                case "LOCATION":                    $content = "上傳位置:緯度 ".$object->Latitude.";經度 ".$object->Longitude;                    break;                case "VIEW":                    $content = "跳轉鏈接 ".$object->EventKey;                    break;                case "MASSSENDJOBFINISH":                    $content = "消息ID:".$object->MsgID.",結果:".$object->Status.",粉絲數:".$object->TotalCount.",過濾:".$object->FilterCount.",發送成功:".$object->SentCount.",發送失敗:".$object->ErrorCount;                    break;                default:                    $content = "receive a new event: ".$object->Event;                    break;            }            if(is_array($content)){                if (isset($content[0])){                    $result = $this->transmitNews($object, $content);                }else if (isset($content['MusicUrl'])){                    $result = $this->transmitMusic($object, $content);                }            }else{                $result = $this->transmitText($object, $content);            }            return $result;        }        private function receiveTulingText($object){            try{                $keyWord = trim($object->Content);                $userid = trim($object->FromUserName);                $apiKey = "*******************************";                 $apiURL = "http://www.tuling123.com/openapi/api?key=".$apiKey."&info=".$keyword."&user
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 堆龙德庆县| 永寿县| 潼南县| 合川市| 霍邱县| 本溪市| 湟源县| 肥东县| 景宁| 虎林市| 禹州市| 莎车县| 靖远县| 盘锦市| 武平县| 土默特左旗| 改则县| 桃园市| 通江县| 宁德市| 周口市| 金湖县| 嵩明县| 禄劝| 儋州市| 南皮县| 梁平县| 深泽县| 丹棱县| 涞源县| 溧水县| 牡丹江市| 黄梅县| 偃师市| 峨眉山市| 桐庐县| 安阳县| 凭祥市| 重庆市| 西乌珠穆沁旗| 图木舒克市|