国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - php版微信開發Token驗證失敗或請求URL超時問題的解決方法

php版微信開發Token驗證失敗或請求URL超時問題的解決方法

2021-03-03 16:25smiling PHP教程

這篇文章主要介紹了php版微信開發Token驗證失敗或請求URL超時問題的解決方法,簡單分析了Token驗證失敗及請求URL超時的原因及相關解決方法,需要的朋友可以參考下

本文實例分析了php版微信開發Token驗證失敗或請求URL超時問題的解決方法。分享給大家供大家參考,具體如下:

微信開發最近要用到的一個功能,其實就是一個非常的簡單的用戶輸入然后自動搜索數據庫并進行一個數據回復了,這個與官方沒多大的問題,但小編就微信Token驗證失敗折騰了許多,下面解決了給各位分析一下.

1.Token驗證失敗

這個就是要檢查配置文件了,最基本的就是

define("TOKEN", "weixin");  weixin 是你的微信開發后臺的ID

微信開發Token驗證失敗或請求URL超時問題解決辦法

2.請求URL超時

這個沒什么辦法多提交幾次了,這個還有就是服務器安裝了安全狗之類的軟件把微信IP給攔截了,可以檢查一下。

3.官方下載一個wechatCallbackapiTest類然后進行一下操作即可,代碼如下:

?
1
2
3
4
5
6
7
define("TOKEN", "weixin");
$wechatObj = new wechatCallbackapiTest();
if (isset($_GET['echostr'])) {
  $wechatObj->valid();
}else{
  $wechatObj->responseMsg();
}

wechatCallbackapiTest類就代碼如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
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 (!emptyempty($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 != " " || !emptyempty( $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;
    }
  }
}

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

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 免费看黄色一级视频 | 亚洲精品综合 | 久久久久久久久久久久国产 | 成人网av | 欧美寂寞影院 | 日本一区二区三区免费观看 | 一区自拍| 久久久精品一区二区三区 | 久久精品一区二区三区四区 | 成人精品一区二区三区 | 日韩精品一区二区三区在线观看 | 色av综合 | 国产精品美女久久久久久久网站 | 日本在线观看一区 | 日韩综合一区 | 污视频网站在线观看 | 国产一区二区三区在线免费 | 久久久成人免费一区二区 | 精品一区二区三区中文字幕老牛 | 日本精品在线观看视频 | 日韩免费一区二区 | 自拍亚洲 | 日韩激情一区二区三区 | 噜噜噜噜狠狠狠7777视频 | 午夜视频在线 | 欧美电影网站 | www.免费av| theporn国产在线精品 | 高清国产一区二区三区 | 亚洲精品一区二区三区在线 | 亚洲国产精品美女 | 日韩一区二区三区在线视频 | 午夜精品在线 | 国产精品久久久久久av公交车 | 久久九九 | 久久精品久久久久久久久久16 | 国产淫片在线观看 | 日韩 欧美 中文 | 国产一区二区三区四区 | 欧美影院 | zzzzyyyy精品国产 |