解決獲取微信用戶信息 48001錯誤

你們都知道經過網頁調用微信官方提供的API獲取微信用戶基本信息有兩種方式:php

  1. 用戶經過受權的方式
  2. 用戶非感知的靜默受權方式

/*
    * 獲取網頁靜默受權url
    */
    public function snsapiBaseUrl($url)
    {

        $redirect_uri = urlencode($url);
        $auth_url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=" . $this->appId . "&redirect_uri=" . $redirect_uri . "&response_type=code&scope=snsapi_base&state=base#wechat_redirect";
        return $auth_url;

    }

    /*
     * 獲取用戶信息的網頁受權url
     */
    public function snsapiUserinfoUrl($url)
    {
        $redirect_uri = urlencode($url);
        $auth_url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=" . $this->appId . "&redirect_uri=" . $redirect_uri . "&response_type=code&scope=snsapi_userinfo&state=userinfo#wechat_redirect";
        return $auth_url;
    }

而後,若是想經過靜默受權方式獲取用戶信息,必須第一次調用snsapi_userinfo方式,經用戶受權以後,之後再經過snsapi_base獲取用戶信息以後,就不須要用戶受權了,不然則會報48001錯誤,錯誤信息爲:api

錯誤碼說明文檔:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1433747234微信

微信全局返回碼說明app

Array
(
    [errcode] => 48001
    [errmsg] => api unauthorized, hints: [ req_id: hJhbDpLoRa-1pKena ]
)this

技術文檔說明爲: api 功能未受權   實際上後臺已經取得了相關權限url

然而官方文檔並無對此進行說明,開發者在開發時需注意spa

獲取的正確的數據爲:code

相關文章
相關標籤/搜索