微信公眾號授權登錄


本隨筆為個人總結,相對較易理解,經驗不深,如果有不正確的地方,請指出,謝謝
學習視頻:https://www.imooc.com/learn/483
在thinkphp5.1使用的視頻:https://www.bilibili.com/video/BV134411V7NC/?p=9&t=727

一、微信公眾平台

1.1 開發概述

文檔網頁:https://developers.weixin.qq.com/doc/offiaccount/Getting_Started/Global_Return_Code.html

  1. 微信公眾平台開發是指為微信公眾號進行業務開發,為移動應用、PC端網站、公眾號第三方平台(為各行各業公眾號運營者提供服務)的開發,需要使用微信開放平台接入,這兩個想使用微信授權登錄等接口都要300每年

  2. 在申請到認證公眾號之前,你以先通過測試號申請系統,快速申請一個接口測試號(可以使用微信授權登錄),立即開始接口測試開發。

  3. 公眾平台以access_token為接口調用憑據,來調用接口,所有接口的調用需要先獲取access_token,access_token在2小時內有效,過期需要重新獲取,但1天內獲取次數有限自行存儲

1.2 前提

網址:https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfo&t=sandbox/index

申請好了測試號,填寫接口配置信息的URL,是用來讓微信發送GET請求,GET請求中,帶有幾個參數,在這個PHP文件中我們要把GET參數中的echostr參數原封不動的輸出出來,echo $_GET['echostr']; 此時便可校驗成功,另外幾個參數用來讓我們校驗是否是微信發送的請求,具體可以看文檔

UTOOLS1587483355378.png

這里可以使用utoos(一個工具寶箱)工具里的內網穿透,需要配置一下host文件

UTOOLS1587535092632.png

1.3 接口調用實質

重點:通過GET地址欄傳參,POST,取得xml文檔、json等方式進行數據傳輸。

由於使用的是測試號,無法使用直接使用頁面來添加公眾號菜單,所以需要使用微信提供的接口來創建公眾號的菜單,而使用這個接口,就需要獲取access_token

1.4 獲取access_token

1.5 curl(重點)

​ 我們需要使用到curl,簡單來說能使用cURL實現Get和Post請求的方法,能獲取訪問的頁面的信息,模擬訪問網頁,進一步了解:https://blog.csdn.net/weixin_39616995/article/details/82346526,

  /**
     * @param $url  要爬的地址
     * @param string $type 請求方式,get還是post
     * @param string $res  決定返回類型,對象("json")否則數組
     * @param string $arr  要進行post傳輸的json字符串
     * @return mixed 爬到的內容
     */
function httpCurl($url, $type="get", $res="json", $arr='')
    {
        //1.初始化curl
        $ch = curl_init();
        //2.設置curl參數
        curl_setopt($ch, CURLOPT_URL, $url);			//設置要訪問的URL
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);	//設置使用curl_exec()獲取訪問到信息時,為1時以字符串返回,不直接輸出
        if ($type == 'post') {
            curl_setopt($ch, CURLOPT_POST, 1);			//為1,設置為post訪問
            curl_setopt($ch, CURLOPT_POSTFIELDS, $arr); //把$arr字符串當做表單數據post傳輸過去
        }
        //3.采集,正式進行頁面訪問,把頁面輸出的結果返回
        $output = curl_exec($ch);	
        //4.關閉
        curl_close($ch);
        
        if ($res == 'json') {
            return json_decode($output, false);			//false:把頁面的json字符串返回結果輸出成對象	
        }
        return json_decode($output, true);				//true:把頁面的json字符串返回結果輸出成數組
    }

在上面,我們可以知道,直接通過地址欄訪問的話可以看到access_token,於是,我們也可以通過curl進行get訪問該地址,並獲取該頁面的信息,但是,這是個json字符串,我們比較習慣使用數組,因此,我們通過json_decode()把這個獲取到的json字符串轉換為數組,用上面這個方法就會獲取得方便一些,如:

$data = httpCurl("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=wxada87&secret=7e88d8ba3c", "get", "arr", "");

這樣便取得了access_token,有效時間為兩個小時,這段時間里我們可以使用它調用接口。

1.6 創建菜單

UTOOLS1587559086640.png

接口調用請求說明

http請求方式:POST(請使用https協議) https://api.weixin.qq.com/cgi-bin/menu/create?access_token=ACCESS_TOKEN

click和view的請求示例

{
     "button":[
     {	
          "type":"click",
          "name":"今日歌曲",
          "key":"V1001_TODAY_MUSIC"
      },
      {
           "name":"菜單",
           "sub_button":[
           {	
               "type":"view",
               "name":"搜索",
               "url":"http://www.soso.com/"
            },
            {
                 "type":"miniprogram",
                 "name":"wxa",
                 "url":"http://mp.weixin.qq.com",
                 "appid":"wx286b93c14bbf93aa",
                 "pagepath":"pages/lunar/index"
             },
            {
               "type":"click",
               "name":"贊一下我們",
               "key":"V1001_GOOD"
            }]
       }]
 }

簡單介紹type類型

  • type為view時,點擊按鈕會直接跳轉到url中
  • 為click時,會向我們的填寫的接口URL地址發送xml文檔我們進行接收分析,再發送我們的xml文檔到微信

讓我們把帶有剛剛獲取的access_token接入該URL中,把創建菜單的json字符串post過去,現在構建json

$postArr = [
                "button" => [
                    [
                        'name' => urlencode('菜單'),			
                        'sub_button' => [
                            [
                                'type' => 'view',
                                'name' => urlencode('百度'),
                                'url'  => 'https://www.baidu.cn'
                            ],
                            [
                                'type' => 'click',
                                'name' => urlencode('聯系我'),
                                'key'  => 'connect_me'
                            ]
                        ]
                    ],
                    [
                        'type' => 'view',
                        'name' => urlencode('百度'),
                        'url'  => 'https://www.baidu.cn'
                    ]
                ],
           ];
$postJson = urldecode(json_encode($postArr));
$res = httpCurl($url, 'post', 'json', $postJson);
var_dump($res);

講解:

嗯?不是寫json么,怎么變成了寫數組,json是字符串,像這樣:

{"button":[{"name":"菜單","sub_button":[{"type":"view","name":"百度","url":"https:\/\/www.baidu.cn"},{"type":"click","name":"聯系我","key":"connect_me"}]},{"type":"view","name":"百度","url":"https:\/\/www.baidu.cn"}]}

也就是上面微信要求傳輸的數據,但是構建這個json字符串如果要嵌入變量或者在其中使用函數,就會相對麻煩,所以我們構建成數組,但是數組怎么變成json字符串呢?我們可以使用json_encode()函數進行轉換,但是使用json_encode會造成新的問題,像這樣"name":"\u83dc\u5355"

json_encode()會把其中的中文轉化為unicode編碼,但是我們要post過去的就是中文,因此我們可以要他變成不是中文,使用urlencode("菜單"),將所有中文轉換為url編碼,%E8%8F%9C%E5%8D%95,這時候再進行urldecode()會變成"name":"%E8%8F%9C%E5%8D%95",emmm,我們要傳輸的是中文。。。所以我們需要把這些url編碼再轉換成中文,使用urldecode()就能實現把其中的url編碼轉換成中文。綜上$postJson = urldecode(json_encode($postArr));

終於把這個json字符串弄出來了,接下來就要把這個json字符串,傳輸給微信服務器

http請求方式:POST(請使用https協議) https://api.weixin.qq.com/cgi-bin/menu/create?access_token=ACCESS_TOKEN

要使用post,那就使用剛剛寫好的httpCurl($url, 'post', 'json', $postJson)進行傳輸吧,就獲得了微信服務器的json字符串,如果返回的是{"errcode":0,"errmsg":"ok"},那我們就設置菜單成功了,可以打開測試公眾號進行查看啦(取消關注再進行關注會更新的快一些),錯誤的話就看一下返回的錯誤提示吧

1.7 網頁授權

需要先到公眾平台官網中的“開發 - 接口權限 - 網頁服務 - 網頁帳號 - 網頁授權獲取用戶基本信息”的配置選項中,進行回調地址配置,填寫域名就行,不用寫http等

UTOOLS1587535763034.png UTOOLS1587535840099.png

授權步驟

  1. 引導用戶進入授權頁面同意授權,獲取code

  2. 通過code換取網頁授權access_token(與基礎支持中的access_token不同)

  3. 通過網頁授權access_token和openid獲取用戶基本信息

此處的access_token與前面的access_token不同,這里access_token的是用來獲取用戶基本信息的.

1.引導用戶進入授權界面

在創建菜單時,其中一個按鈕使用view

[
    'type' => 'view',
    'name' => urlencode('授權登錄'),
    'url'  => 'https://www.yourdomain.cn/wxlogin.php'
]

此處的url使用自己要處理登錄的php頁面,成功創建菜單,並在公眾號成功更新(不更新的話可以重新關注),我們點擊這個按鈕之后就會跳轉到我們自己的頁面,當然,啥也沒有,我們現在就要在這個頁面獲取code

2.獲取code

參考鏈接(請在微信客戶端中打開此鏈接體驗):

https://open.weixin.qq.com/connect/oauth2/authorize?appid=wxf0e81c3bee622d60&redirect_uri=http%3A%2F%2Fnba.bluewebgame.com%2Foauth_response.php&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect

如果鏈接的參數順序不對,授權頁面將無法正常訪問

我們在wxLogin.php這個頁面中,需要構建這個並跳轉到這個url,注意到,redirect_uri=http%3A%2F%2Fnba.bluewebgame.com%2Foauth_response.php,是一些看不懂的字符,我們需要使用urlencode( )將傳輸的地址的一些符號轉化成這種形式才能進行傳輸,否則分不清url的參數到底是哪個url中的參數,因為都是使用&進行參數分割

redirect_url必須要在我們填寫的回調地址域名下,否則會失敗,在我們進行該url訪問后,頁面將跳轉至 redirect_uri/?code=CODE&state=STATE,也就是會帶有這些參數跳轉到這個redirect_url網址,這個網址就應該用$_GET['code']來取得url參數中的code

參數詳細介紹

參數 是否必須 說明
appid 公眾號的唯一標識
redirect_uri 授權后重定向的回調鏈接地址, 請使用 urlEncode 對鏈接進行處理
response_type 返回類型,請填寫code
scope 應用授權作用域,snsapi_base (不彈出授權頁面,直接跳轉,只能獲取用戶openid),snsapi_userinfo (彈出授權頁面,可通過openid拿到昵稱、性別、所在地。並且, 即使在未關注的情況下,只要用戶授權,也能獲取其信息 )
state 重定向后會帶上state參數,開發者可以填寫a-zA-Z0-9的參數值,最多128字節
#wechat_redirect 無論直接打開還是做頁面302重定向時候,必須帶此參數

把地址拼接好之后,直接header("Location:" . $url)跳轉即可,接下來,微信對get過去的數據進行判斷,並將參數code和state通過get傳輸到redirect_url上,如:http:www.mingyue.cn/wxCallback.php,參數state與我們傳送過去的state一樣,可以用來校驗,該網址上,我們使用$_GET['code']來獲取code

code說明 : code作為換取access_token的票據,每次用戶授權帶上的code將不一樣,code只能使用一次,5分鍾未被使用自動過期。

code的目的是用來獲取access_token,access_token才是真正用來獲取用戶信息的令牌。

3.通過code獲取access_token

獲取code后,請求以下鏈接獲取access_token: https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code

參數說明

參數 是否必須 說明
appid 公眾號的唯一標識
secret 公眾號的appsecret
code 填寫第一步獲取的code參數
grant_type 填寫為authorization_code

正確時該網頁顯示的JSON數據包如下:

{
  "access_token":"ACCESS_TOKEN",
  "expires_in":7200,
  "refresh_token":"REFRESH_TOKEN",
  "openid":"OPENID",
  "scope":"SCOPE" 
}
參數 描述
access_token 網頁授權接口調用憑證,注意:此access_token與基礎支持的access_token不同
expires_in access_token接口調用憑證超時時間,單位(秒)
refresh_token 用戶刷新access_token
openid 用戶唯一標識,請注意,在未關注公眾號時,用戶訪問公眾號的網頁,也會產生一個用戶和公眾號唯一的OpenID
scope 用戶授權的作用域,使用逗號(,)分隔

這里的步驟就和前面獲取基礎access_token(用來使用創建菜單接口的)的步驟一樣,先連接對應參數的url,這個url可以直接地址欄進行訪問,會看到對應的json數據,但是這是在微信的網站上的,我們需要使用curl進行獲取json字符串並返回,再通過json_decode($ouput, true);//true為轉換為數組,否則為對象將json字符串轉換為數組(這些操作都正在上面自己寫的httpCurl函數中完成:httpCurl($cur, "get", "arr")),就能通過數組下標將access_token和openid(用戶的唯一標識)取出來,存入session等進行存放,在獲取用戶信息時需要使用到

注意:access_token的過期時間為expire_in(7200秒,2小時)

4.拉取用戶信息(需scope為 snsapi_userinfo)

http:GET(請使用https協議) https://api.weixin.qq.com/sns/userinfo?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN

參數說明

參數 描述
access_token 網頁授權接口調用憑證,注意:此access_token與基礎支持的access_token不同
openid 用戶的唯一標識
lang 返回國家地區語言版本,zh_CN 簡體,zh_TW 繁體,en 英語

正確時返回的JSON數據包如下:

{   
  "openid":" OPENID",
  "nickname": NICKNAME,
  "sex":"1",
  "province":"PROVINCE",
  "city":"CITY",
  "country":"COUNTRY",
  "headimgurl":       "http://thirdwx.qlogo.cn/mmopen/g3MonUZtNHkdmzicIlibx6iaFqAc56vxLSUfpb6n5WKSYVY0ChQKkiaJSgQ1dZuTOgvLLrhJbERQQ4eMsv84eavHiaiceqxibJxCfHe/46",
  "privilege":[ "PRIVILEGE1" "PRIVILEGE2"     ],
  "unionid": "o6_bmasdasdsad6_2sgVt7hMZOPfL"
}

也是一樣的,訪問構造該url的地址時,該頁面會顯示json字符串,我們直接通過httpCurl($url, "get", "arr");返回的便是存有這個用戶信息的數組,通過數組下標便可取出。

到這里,我們就把網頁授權重要的部分弄完啦。

1.8 消息管理

當普通微信用戶向公眾賬號發消息時,微信服務器將POST消息的XML數據包到開發者填寫的URL上。

接收文本信息

<xml>
  <ToUserName><![CDATA[toUser]]></ToUserName>
  <FromUserName><![CDATA[fromUser]]></FromUserName>
  <CreateTime>1348831860</CreateTime>
  <MsgType><![CDATA[text]]></MsgType>
  <Content><![CDATA[this is a test]]></Content>
  <MsgId>1234567890123456</MsgId>
</xml>
參數 描述
ToUserName 開發者微信號
FromUserName 發送方帳號(一個OpenID)
CreateTime 消息創建時間 (整型)
MsgType 消息類型,文本為text
Content 文本消息內容
MsgId 消息id,64位整型

這里是post過來的xml數據包,不能直接使用$_POST獲取

$postObj = file_get_contents("php://input");        //接收post過來的xml字符串
$postArr = simplexml_load_string($postObj, "SimpleXMLElement", LIBXML_NOCDATA); //將XML字符串解釋為對象
$toUserName = $postArr->ToUserName;				//獲取到xml中的開發者微信號
$fromUserName = $postArr->FromUserName;			//獲取到xml的發送方帳號(一個OpenID))
$content = $postArr->Content;					//獲取發送過來的內容
//參數列表的參數都能通過對象->屬性的方式獲取

這樣我們就獲取達到用戶在微信公眾號發送的信息啦。

回復文本信息

格式:

<xml>
  <ToUserName><![CDATA[toUser]]></ToUserName>
  <FromUserName><![CDATA[fromUser]]></FromUserName>
  <CreateTime>12345678</CreateTime>
  <MsgType><![CDATA[text]]></MsgType>
  <Content><![CDATA[你好]]></Content>
</xml>
參數 是否必須 描述
ToUserName 接收方帳號(收到的OpenID)
FromUserName 開發者微信號
CreateTime 消息創建時間 (整型)
MsgType 消息類型,文本為text
Content 回復的消息內容(換行:在content中能夠換行,微信客戶端就支持換行顯示)

接受到用戶發送過來的xml信息的頁面中,我們需要構造這種xml格式的字符串,把其中的參數都替換掉,並將其輸出到該頁面,微信會將該xml字符串帶走回應給用戶。

構建該xml

我們可以直接將字符串和其中的微信需要修改的變量(如ToUserName,就是最初發送過來的FromUserName)進行替換和連接,這里使用sprintf

//構建回復新信息
$toUserName = $postArr->ToUserName;
$fromUserName = $postArr->FromUserName;
$content = "還沒開通該功能"
$xml = "<xml>
          <ToUserName><![CDATA[%s]]></ToUserName>
          <FromUserName><![CDATA[%s]]></FromUserName>
          <CreateTime> .time(). </CreateTime>
          <MsgType><![CDATA[text]]></MsgType>
          <Content><![CDATA[%s]]></Content>
        </xml>";
$info = sprintf($xml, $fromUserName, $toUserName, $content);//把字符串中的%s逐個替換
echo $info;	//讓微信直接在該頁面拿走xml數據包

返回根據格式化字符串格式生成的字符串,如果成功的話微信公眾號就會回復消息啦

看到這,其他地方的看文檔應該看文檔也能解決啦,下面只是潦草的介紹企業微信授權登錄~

二、企業微信

文檔地址:https://work.weixin.qq.com/api/doc/90000/90135/90664

2.1 相關概念介紹

  • corpid:每個企業都擁有唯一的corpid,獲取此信息可在管理后台“我的企業”-“企業信息”下查看“企業ID”(需要有管理員權限)

  • userid:每個成員都有唯一的userid,即所謂“帳號”。在管理后台->“通訊錄”->點進某個成員的詳情頁,可以看到。

  • agentid:每個應用都有唯一的agentid。在管理后台->“應用與小程序”->“應用”,點進某個應用,即可看到agentid。

  • secret:secret是企業應用里面用於保障數據安全的“鑰匙”,每一個應用都有一個獨立的訪問密鑰

  • access_token:access_token是企業后台去企業微信的后台獲取信息時的重要票據,由corpid和secret產生。所有接口在通信時都需要攜帶此信息用於驗證接口的訪問權限

與微信公眾號的不同之處:

  • 企業微信中只有一個access_token,而微信公眾號中有兩個(一個是調用各種接口的,一個是僅能用來獲取用戶信息的)

2.2 獲取access_token

獲取access_token是調用企業微信API接口的第一步,相當於創建了一個登錄憑證,其它的業務API接口,都需要依賴於access_token來鑒權調用者身份。

獲取用戶信息直接就要用到這個access_token

請求方式: GET(HTTPS
請求地址: https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=ID&corpsecret=SECRET
注:此處標注大寫的單詞ID和SECRET,為需要替換的變量,根據實際獲取值更新。其它接口也采用相同的標注,不再說明。

參數說明:

參數 必須 說明
corpid 企業ID,獲取方式參考:術語說明-corpid
corpsecret 應用的憑證密鑰,獲取方式參考:術語說明-secret

權限說明:
每個應用有獨立的secret,獲取到的access_token只能本應用使用,所以每個應用的access_token應該分開來獲取

實現

當我們構造好上面的URL地址后,直接訪問該URL地址就會看到相應的json字符串:

{    
     "errcode": 0,   
     "errmsg": "ok",   
     "access_token": "accesstoken000001",   
     "expires_in": 7200
}

參數說明:

參數 說明
errcode 出錯返回碼,為0表示成功,非0表示調用失敗
errmsg 返回碼提示語
access_token 獲取到的憑證,最長為512字節
expires_in 憑證的有效時間(秒)

獲取其他網頁的字符串和微信公眾號的一樣,都是通過curl完成,這里再貼一次

  /**
     * @param $url  要爬的地址
     * @param string $type 請求方式,get還是post
     * @param string $res  決定返回類型,對象("json")否則數組
     * @param string $arr  要進行post傳輸的json字符串
     * @return mixed 爬到的內容
     */
function httpCurl($url, $type="get", $res="json", $arr='')
    {
        //1.初始化curl
        $ch = curl_init();
        //2.設置curl參數
        curl_setopt($ch, CURLOPT_URL, $url);			//設置要訪問的URL
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);	//設置使用curl_exec()獲取訪問到信息時,為1時以字符串返回,不直接輸出
        if ($type == 'post') {
            curl_setopt($ch, CURLOPT_POST, 1);			//為1,設置為post訪問
            curl_setopt($ch, CURLOPT_POSTFIELDS, $arr); //把$arr字符串當做表單數據post傳輸過去
        }
        //3.采集,正式進行頁面訪問,把頁面輸出的結果返回
        $output = curl_exec($ch);	
        //4.關閉
        curl_close($ch);
        
        if ($res == 'json') {
            return json_decode($output, false);			//false:把頁面的json字符串返回結果輸出成對象	
        }
        return json_decode($output, true);				//true:把頁面的json字符串返回結果輸出成數組

使用該方法,httpCurl($url, 'get', 'arr')直接將url頁面中的json字符串轉換為數組,通過數組下標即可獲取access_token,將其存起來(session,redis),過期時間2小時,后面的接口調用需要使用到

2.3 網頁授權登錄

步驟

與前面有些相似,所以就不詳細介紹了

  1. 用戶點擊按鈕,跳轉網頁頁面(該網頁能夠進行構造url並跳轉)
  2. 填寫的回調地址上接收code
  3. 通過code和access_token獲取用戶身份:userid(是企業用戶)或openid(不是企業用戶)
  4. 為企業成員時,通過access_token和userid讀取成員信息

1. 獲取code

構建URL並跳轉(header)

https://open.weixin.qq.com/connect/oauth2/authorize?appid=CORPID&redirect_uri=REDIRECT_URI&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect

參數說明:

參數 必須 說明
appid 企業的CorpID
redirect_uri 授權后重定向的回調鏈接地址,請使用urlencode對鏈接進行處理
response_type 返回類型,此時固定為:code
scope 應用授權作用域。企業自建應用固定填寫:snsapi_base
state 重定向后會帶上state參數,企業可以填寫a-zA-Z0-9的參數值,長度不可超過128個字節
#wechat_redirect 終端使用此參數判斷是否需要帶上身份信息

跳轉到該url后,微信將通過get方式回調到redirect_uri,向我們傳輸 redirect_uri?code=CODE&state=STATE

2.回調頁接收code

直接$_GET['code']即可獲取

3.通過code和access_token獲取用戶身份

這里的用戶有兩種身份:非企業成員、企業成員

對於非企業成員返回的是openid,企業成員返回的是userid

請求方式:GET(HTTPS
請求地址:https://qyapi.weixin.qq.com/cgi-bin/user/getuserinfo?access_token=ACCESS_TOKEN&code=CODE

參數說明:

參數 必須 說明
access_token 調用接口憑證
code 通過成員授權獲取到的code,最大為512字節。每次成員授權帶上的code將不一樣,code只能使用一次,5分鍾未被使用自動過期。

a) 當用戶為企業成員時返回示例如下:

{   "errcode": 0,   "errmsg": "ok",   "UserId":"USERID",   "DeviceId":"DEVICEID"}
參數 說明
errcode 返回碼
errmsg 對返回碼的文本描述內容
UserId 成員UserID。若需要獲得用戶詳情信息,可調用通訊錄接口:讀取成員
DeviceId 手機設備號(由企業微信在安裝時隨機生成,刪除重裝會改變,升級不受影響)

b) 非企業成員授權時返回示例如下:

{   "errcode": 0,   "errmsg": "ok",   "OpenId":"OPENID",   "DeviceId":"DEVICEID"}
參數 說明
errcode 返回碼
errmsg 對返回碼的文本描述內容
OpenId 非企業成員的標識,對當前企業唯一
DeviceId 手機設備號(由企業微信在安裝時隨機生成,刪除重裝會改變,升級不受影響)

使用httpCurl獲取該json並轉換該字符串為數組,這里不再詳細介紹,與前面的一樣噠~

4.讀取成員

在通訊錄同步助手中此接口可以讀取企業通訊錄的所有成員信息,而自建應用可以讀取該應用設置的可見范圍內的成員信息。

請求方式:GET(HTTPS
請求地址:https://qyapi.weixin.qq.com/cgi-bin/user/get?access_token=ACCESS_TOKEN&userid=USERID

參數說明:

參數 必須 說明
access_token 調用接口憑證
userid 成員UserID。對應管理端的帳號,企業內必須唯一。不區分大小寫,長度為1~64個字節

訪問后顯示的是json字符串,使用httpCurl訪問url並獲取該json並轉換該字符串為數組,獲取完成。

希望我的文章能對大家有所幫助,謝謝你的閱讀~


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM