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

首頁 > 開發 > PHP > 正文

微信公眾平臺開發關注及取消關注事件的方法

2024-05-04 23:29:17
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了微信公眾平臺開發關注及取消關注事件的方法,較為詳細的分析了微信公眾平臺設置關注的技巧,并附帶了相關參數的說明,具有一定的參考借鑒價值,需要的朋友可以參考下
 
 

本文實例講述了微信公眾平臺開發關注及取消關注事件的方法。分享給大家供大家參考。具體分析如下:

用戶在關注與取消關注公眾號時,微信會把這個事件推送到開發者填寫的URL,方便開發者給用戶下發歡迎消息或者做帳號的解綁.

下面是一個微信公眾平臺關注和取消關注的實例,代碼如下:

復制代碼代碼如下:
define("TOKEN", "w3note");//定義識別碼 
$wechatObj = new wechatCallbackapiTest();//實例化wechatCallbackapiTest類 
 
if(!isset($_GET["echostr"])){ 
     $wechatObj->responseMsg(); 
}else{ 
 $wechatObj->valid(); 

class wechatCallbackapiTest 

 public function valid() 
    { 
        $echoStr = $_GET["echostr"]; 
        if($this->checkSignature()){ 
         echo $echoStr; 
         exit; 
        } 
    } 
    public function responseMsg()//執行接收器方法 
    { 
    $postStr = $GLOBALS["HTTP_RAW_POST_DATA"]; 
    if (!emptyempty($postStr)){ 
      $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA); 
      $RX_TYPE = trim($postObj->MsgType); 
      switch($RX_TYPE){ 
       case "event": 
       $result = $this->receiveEvent($postObj); 
       breadk; 
      } 
      echo $result; 
  }else{ 
   echo ""; 
   exit; 
  } 
 } 
  private function receiveEvent($object){ 
   $content = ""; 
   switch ($postObj->Event){ 
    case "subscribe": 
    $content = "歡迎關注網志博客";//這里是向關注者發送的提示信息 
    break; 
    case "unsubscribe": 
    $content = ""; 
    break; 
   } 
   $result = $this->transmitText($object,$content); 
   return $result; 
    } 
 private function transmitText($object,$content){ 
   $textTpl = "<xml> 
       <ToUserName><![CDATA[%s]]></ToUserName> 
       <FromUserName><![CDATA[%s]]></FromUserName> 
       <CreateTime>%s</CreateTime> 
       <MsgType><![CDATA[text]]></MsgType> 
       <Content><![CDATA[%s]]></Content> 
       <FuncFlag>0</FuncFlag> 
       </xml>"; 
    $result = sprintf($textTpl, $object->FromUserName, $object->$ToUserName, time(), $content); 
    return $result; 
  } 
 private function checkSignature() 
 { 
  $signature = $_GET["signature"]; 
  $timestamp = $_GET["timestamp"]; 
  $nonce = $_GET["nonce"]; 
  $token = TOKEN; 
  $tmpArr = array($token, $timestamp, $nonce); 
  sort($tmpArr, SORT_STRING); 
  $tmpStr = implode( $tmpArr ); 
  $tmpStr = sha1( $tmpStr ); 
  if( $tmpStr == $signature ){ 
   return true; 
  }else{ 
   return false; 
  } 
 } 
}

代碼相關參數說明:

 

參數 描述
ToUserName 開發者微信號
FromUserName 發送方帳號(一個OpenID)
CreateTime 消息創建時間 (整型)
MsgType  消息類型,event
Event 事件類型,subscribe(訂閱)、unsubscribe(取消訂閱)

希望本文所述對大家的php程序設計有所幫助。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 永和县| 彰化县| 加查县| 五莲县| 米林县| 旬邑县| 广州市| 灵丘县| 双牌县| 博罗县| 仁寿县| 雅安市| 康平县| 阿尔山市| 枝江市| 新邵县| 泾川县| 东方市| 东阳市| 台江县| 昌图县| 武陟县| 河南省| 平阴县| 平凉市| 榆树市| 河北区| 历史| 英吉沙县| 松原市| 根河市| 兴城市| 湾仔区| 潼关县| 寿阳县| 桂东县| 中宁县| 永嘉县| 陆川县| 尼木县| 长阳|