thinkphp5微信公眾號token認證
這篇文章介紹的內容是關於thinkphp5微信公眾號token認證,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下
首先說明本人開發微信公眾號是用的thinkphp5框架,如果不用框架可以說開發起來很麻煩,本人開始在Ubuntu環境下開發,後來遇到問題實在無法解決導致換到windows 開發環境下開發,免去了很多麻煩使用的notepad 作為編輯器,這個編輯器功能很強大,thinphp5下載地址在這裡:http://www.thinkphp.cn/down.html,我下載的是核心板,可以依照個人喜好自行下載;
下面也要介紹其他配置,首先你要註冊一個公眾號,然後自己能登錄,如下圖所示:
#這是進入介面之後,詳細的註冊過程就不在贅述了比較簡單可以查看微信開發文件:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1472017492_58YV5,可以根據需要點擊查看,這裡要說一下如果是個人用戶就選擇訂閱號,如果是企業用就選擇服務號,不過都需要認證後才能使用,個人要實名制,企業要企業認證具體認,申請完併登陸後進入如下圖所示頁面,然後點擊左下角的基本配置:
#進入設定頁面如下圖:
上面這個是已經配置好的,如果沒有配置,圖中的停用符號顯示的啟用字樣,並且下面的資訊都未填寫,首先你要點擊修改配置,然後填寫伺服器url位址,這個位址必須是外網能夠存取的,這裡要用的一個軟體叫natapp,具體連結是:https://natapp.cn/ login; 進去之後註冊一下,而且要實名制認證之後才能購買通道,可以購買免費的通道,然後按著教程來操作就能將自己的電腦作為開發環境,當然你也可以申請購買其他伺服器如阿里雲,新浪雲、騰訊雲等等;
#在做微信開發之前要用到驗證自己開發者身份,微信開發團隊給了一個認證環節即:1)將token、timestamp、nonce三個參數進行字典序排序2)將三個參數字串拼接成一個字串進行sha1加密3)開發者獲得加密後的字符串可與signature對比,標識該請求來自微信;這三個請求;其實很簡單,查看微信公眾開發文檔,裡面也有源代碼,下面我們上代碼:
public function index(){ $timestamp = $_GET['timestamp']; $nonce = $_GET['nonce']; $token = '你定义的token令牌'; $signature = $_GET['signature']; $array = array($timestamp,$nonce,$token); sort($array); //将排序后的三个参数拼接之后参数拼接之后进行sha1加密 $tmpstr = implode('',$array); $tmpstr = sha1($tmpstr);$this->wxLog('hello'); //将加密后的字符串与signature进行对比; if($tmpstr == $signature && isset($_GET['echostr'])){ echo $_GET['echostr']; exit; }else{ $this->responseMsg(); } }
·簡單說明,在這裡我簡單加了一個判斷,如果我不是驗證token我只是來接入並相應微信的,我就會不必要在進行驗證了,而且如果不是token驗證微信伺服器也不會發送echostr這個字段的數據,所以如果沒有這個數據我們就進行相關操作比如響應信息等等;如果token認證失敗,請檢查文件存放路徑對不對,自己的程式碼有沒有問題,我當初是走了很多彎路,才認證成功的,第一次認證失敗不要緊,多點擊幾次就可以了;
當你申請完natapp並完成內透之後,將網址填入url處,注意:這個網址要能直接存取你的接口檔案就是上面那串程式碼的檔案;然後寫一下你定義的token令牌,在上面程式碼出填寫,然後隨機產生一個“訊息加解密金鑰”,產生之後點選提交,第一次可能認證失敗,多點擊幾次,如果出現認證失敗的現像要仔細檢查自己的代碼和url,我當初是url填寫的不對導致一直認證失敗,所以一定要填寫正確的url地址,提交成功之後就可以繼續開發你的功能了~!
thinkphp 隱藏index.php iis apache nginx
以上是thinkphp5微信公眾號token認證的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

JWT是一種基於JSON的開放標準,用於在各方之間安全地傳輸信息,主要用於身份驗證和信息交換。 1.JWT由Header、Payload和Signature三部分組成。 2.JWT的工作原理包括生成JWT、驗證JWT和解析Payload三個步驟。 3.在PHP中使用JWT進行身份驗證時,可以生成和驗證JWT,並在高級用法中包含用戶角色和權限信息。 4.常見錯誤包括簽名驗證失敗、令牌過期和Payload過大,調試技巧包括使用調試工具和日誌記錄。 5.性能優化和最佳實踐包括使用合適的簽名算法、合理設置有效期、

字符串是由字符組成的序列,包括字母、數字和符號。本教程將學習如何使用不同的方法在PHP中計算給定字符串中元音的數量。英語中的元音是a、e、i、o、u,它們可以是大寫或小寫。 什麼是元音? 元音是代表特定語音的字母字符。英語中共有五個元音,包括大寫和小寫: a, e, i, o, u 示例 1 輸入:字符串 = "Tutorialspoint" 輸出:6 解釋 字符串 "Tutorialspoint" 中的元音是 u、o、i、a、o、i。總共有 6 個元

靜態綁定(static::)在PHP中實現晚期靜態綁定(LSB),允許在靜態上下文中引用調用類而非定義類。 1)解析過程在運行時進行,2)在繼承關係中向上查找調用類,3)可能帶來性能開銷。

PHP的魔法方法有哪些? PHP的魔法方法包括:1.\_\_construct,用於初始化對象;2.\_\_destruct,用於清理資源;3.\_\_call,處理不存在的方法調用;4.\_\_get,實現動態屬性訪問;5.\_\_set,實現動態屬性設置。這些方法在特定情況下自動調用,提升代碼的靈活性和效率。

PHP和Python各有優勢,選擇依據項目需求。 1.PHP適合web開發,尤其快速開發和維護網站。 2.Python適用於數據科學、機器學習和人工智能,語法簡潔,適合初學者。

PHP在電子商務、內容管理系統和API開發中廣泛應用。 1)電子商務:用於購物車功能和支付處理。 2)內容管理系統:用於動態內容生成和用戶管理。 3)API開發:用於RESTfulAPI開發和API安全性。通過性能優化和最佳實踐,PHP應用的效率和可維護性得以提升。

PHP是一種廣泛應用於服務器端的腳本語言,特別適合web開發。 1.PHP可以嵌入HTML,處理HTTP請求和響應,支持多種數據庫。 2.PHP用於生成動態網頁內容,處理表單數據,訪問數據庫等,具有強大的社區支持和開源資源。 3.PHP是解釋型語言,執行過程包括詞法分析、語法分析、編譯和執行。 4.PHP可以與MySQL結合用於用戶註冊系統等高級應用。 5.調試PHP時,可使用error_reporting()和var_dump()等函數。 6.優化PHP代碼可通過緩存機制、優化數據庫查詢和使用內置函數。 7

PHP仍然具有活力,其在現代編程領域中依然佔據重要地位。 1)PHP的簡單易學和強大社區支持使其在Web開發中廣泛應用;2)其靈活性和穩定性使其在處理Web表單、數據庫操作和文件處理等方面表現出色;3)PHP不斷進化和優化,適用於初學者和經驗豐富的開發者。
