微信公眾號之網頁授權取得的實現步驟
根據微信公眾號開發官方文件:
取得使用者資訊步驟如下:
1 第一步:使用者同意授權,取得code
2 第二步:透過code換取網頁授權access_token
3 第三步:刷新access_token(如果需要)
4 第四步:拉取用戶資訊(需scope為snsapi_userinfo)
1 取得code
在確保微信公眾帳號擁有授權作用域(scope參數)的權限的前提下(服務號碼獲得高級介面後,預設擁有scope參數中的snsapi_base和snsapi_userinfo).
若提示“該連結無法存取”,請檢查參數是否填寫錯誤,是否擁有scope參數對應的授權作用域權限。 ,授權頁面將無法正常存取
AppID - 公眾號碼的唯一識別
REDIRECT_URI - 跳轉url
STATE - 開發者可以自訂填寫a-zA-Z0-9的參數值
2 透過code換取網頁授權access_token
grant_type - 值為authorization_code
實作程式碼:
<code class="hljs php">$code = I('get.code'); if (empty($code)) { //todo 非微信访问 exit('</code>'); }else{ //授权后操作 }
這裡access_token可以做快取處理
,避免造成頻繁取得
實作程式碼,以TP框架為例:<code class="hljs bash">$url = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=' . C('wechat.AppID') . '&secret=' . C('wechat.AppSecret'); $str = file_get_contents($url); $str = json_decode($str, true); $access_token = $str['access_token'];</code>
openid是唯一標識微信使用者的,如果使用者不是第一次登陸,可以在得到openid後
查詢
資料庫是否有綁定此openid的用戶,之後就無需重新獲取用戶數據,直接獲取的資料庫user_id設定
session
4 拉取用戶資訊(需scope為snsapi_userinfo)
在資料庫無此微訊號用戶的綁定下,就相當於用戶第一次造訪登陸,則透過第四步驟來取得使用者資訊(在使用者授權情況下,網頁授權作用域為snsapi_userinfo,則此時開發者可以透過access_token和openid拉取使用者資訊了),然後後台建立user並綁定此微
信用戶(透過openid)
openid - 公用號碼唯一識別
<code class="hljs php">$access_token = S('access_token'); if (empty($access_token)) { $url = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=' . C('wechat.AppID') . '&secret=' . C('wechat.AppSecret'); $str = file_get_contents($url); $str = json_decode($str, true); $access_token = $str['access_token']; S('access_token', $access_token, 3600); }</code>
以上是微信公眾號之網頁授權取得的實現步驟的詳細內容。更多資訊請關注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)

Scrapy實現微信公眾號文章爬取和分析微信是近年來備受歡迎的社群媒體應用,在其中運作的公眾號也扮演著非常重要的角色。眾所周知,微信公眾號是一個資訊和知識的海洋,因為其中每個公眾號都可以發布文章、圖文訊息等資訊。這些資訊可以被廣泛地應用在許多領域中,例如媒體報道、學術研究等。那麼,本篇文章將介紹如何使用Scrapy框架來實現微信公眾號文章的爬取與分析。 Scr

微信公眾號認證和不認證的差異在認證識別、功能權限、推播頻率、介面權限和使用者信任度等方面。詳細介紹:1、認證標識,認證公眾號會獲得官方頒發的認證標識,即藍色V標誌,這個標誌可以增加公眾號的可信度和權威性,讓用戶更容易辨別真實的官方公眾號; 2、功能權限,認證公眾號相比未認證的公眾號擁有更多的功能和權限,例如認證公眾號可以申請開通微信支付功能,實現在線支付和商業化運營等等。

Python是一種優雅的程式語言,具有強大的資料處理和網路爬蟲功能。在這個數位時代,網路上充滿了大量的數據,爬蟲已成為獲取數據的重要手段,因此,Python爬蟲在數據分析和挖掘方面有著廣泛的應用。在本文中,我們將介紹如何使用Python爬蟲來取得微信公眾號文章資訊。微信公眾號是一種流行的社交媒體平台,用於線上發布文章,是許多公司和自媒體推廣和行銷的重要工

在當今網路時代,微信公眾號成為了越來越多企業的重要行銷管道。想要自己的微信公眾號實現更多的功能,常常需要寫對應的介面。本文將以PHP語言為例,介紹如何建構一個微信公眾號API介面。一、前置準備在編寫微信公眾號API介面之前,需要開發者擁有一個微信公眾號的帳號,並且在微信公眾平台中申請開發者介面權限。申請成功後,可以取得相關的開發者AppID和AppSe

如何使用Laravel開發一個基於微信公眾號的線上點餐系統隨著微信公眾號的廣泛應用,越來越多的企業開始將其作為線上行銷的重要管道。在餐飲業中,開發一個基於微信公眾號的線上點餐系統能夠提高企業的效率和銷售額。本文將介紹如何使用Laravel框架來開發一個這樣的系統,並提供具體的程式碼範例。專案準備首先,需要確保已經在本地環境中安裝了Laravel框架。可以通

公眾號每天不是只能發一篇文章,每次最多可以發表八篇文章,多篇文章的發布方法:1、點擊左側的“素材管理”,再點擊“新建圖文素材”開始編輯第一篇文章;2、編輯完第一篇文章之後,點選左側第一篇文章下面的+號,點選「圖文訊息」即可編輯第二篇文章;3、做完多圖文後,點選「保管並群發」即可完成多篇文章的發布。

隨著網路的普及和行動裝置的廣泛使用,微信公眾號已經成為了企業行銷不可或缺的一部分。透過微信公眾號,企業可以實現輕鬆地與用戶互動,推廣產品和服務,提高品牌知名度。為了更好地開發微信公眾號應用,越來越多的開發者和企業選擇使用Go語言來建立微信公眾號應用程式。 Go語言是一種由Google開發的程式語言,它的語法簡潔,適合建立高效能、高並發的即時應用程式。在簡單易用和

隨著微信公眾號在社群網路中的逐漸普及,越來越多的開發者開始涉足微信公眾號開發領域。在這其中,PHP作為一種常見的後端程式語言,也開始被廣泛應用於微信公眾號的開發。本文將介紹PHP在微信公眾號發展上的基礎知識與常用技巧。一、PHP與微信公眾號開發基礎微信公眾號開發微信公眾號是指一種基於微信平台的互聯網應用程序,可以為用戶提供不同類型的服務和內容,如信息推送
