微信公眾號獲取openid(php實例)


微信公眾號獲取openid

公眾號獲取openid的方法跟小程序獲取openid其實是一樣的,只是code獲取的方式不一樣

 

小程序獲取code:

  用戶授權登錄時調用wx.login即可獲取到code

 

公眾號獲取code:

  公眾號想要獲取code 必須先要用戶打開了你的網頁,你在菜單欄設置了一個欄目,而鏈接如:

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

  那么用戶點開了你的這個欄目則會跳到  redirect_uri 的路徑上面去,同時也會把code傳遞過去,只需要接收即可

 

 

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

  具體詳情大家看一下微信文檔 :https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_webpage_authorization.html

  相關代碼如下:

    public function openid($code){
        $secret = "appsecret";
        $appid = "appid";
        $url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=".$appid."&secret=".$secret."&code=".$code."&grant_type=authorization_code";

        $ch = curl_init();
        curl_setopt($ch,CURLOPT_URL,$url);
        curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
        curl_setopt($ch,CURLOPT_TIMEOUT,30);

        $content = curl_exec($ch);
        $status = (int)curl_getinfo($ch,CURLINFO_HTTP_CODE);
        if ($status == 404) {
            return $status;
        }
        curl_close($ch);
        return json_decode($content,true);
    }

 

  


免責聲明!

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



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