php 微信開發平台開發小實驗

來源:互聯網
上載者:User
微信和隨之微信產生的開放平台最近著實火了一下。一直想做個微信的平台試試,最近有了個好點子,想儘快把它實現出來,好在微信不需要什麼UI等等的設計,只需要把邏輯展現出來即可了。其實微信公眾平台如果只是作為一個發布資訊的平台的話,也就是“編輯模式”下其實是無需敲代碼的。只是在開發人員模式下需要開發人員去設計一定的邏輯和代碼去實現特定的功能,接下來就說下開發的起步: 1.開發微信公眾平台首先要有伺服器資源,當然那種編輯模式的不算。所謂的編輯模式就是那種單純的每天推送一條訊息的公眾帳號。伺服器資源各種雲各種伺服器都是可以的,推薦BAE/SAE/堅果/阿里等等的一種,各有好處,而且由於競爭的緣故?都會有部分免費的資源相送,拿來練練手就足夠的了。a.申請BAE帳號,建立應用,如果是測試的話去微信公眾平台的首頁下載測試的PHP代碼,只需將其中的TOKEN修改成自己的TOKEN即可。例如下面的PHP測試代碼,代碼的邏輯很清晰,即一個驗證過程,也能定義一部分的邏輯操作。上傳這個檔案並且建立自己應用的版本1:  
<?php  /** * wechat php test */  //define your token  define("TOKEN", "weixin");//此時你的微信公眾平台的token即為weixin  $wechatObj = new wechatCallbackapiTest();  $wechatObj->valid();  class wechatCallbackapiTest  {  public function valid()  {  $echoStr = $_GET["echostr"];  //valid signature , option  if($this->checkSignature()){  echo $echoStr;  exit;  }  }  public function responseMsg()  {  //get post data, May be due to the different environments  $postStr = $GLOBALS["HTTP_RAW_POST_DATA"];  //extract 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(!empty( $keyword ))  {  $msgType = "text"; (PS:^_^不錯的php學習交流群:276167802,驗證:csl,有興趣的話可以加入進來一起討論)  $contentStr = "Welcome to wechat world!";  $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);  echo $resultStr;  }else{  echo "Input something...";  }  }else {  echo "";  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;  }  }  }  ?>  
 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.