国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

微信公眾號(hào)授權(quán)

tuomao / 1089人閱讀

摘要:重新整理做過的功能,以及過程遇到問題,溫故而知新官方文檔一準(zhǔn)備工作接入配置修改添加業(yè)務(wù)域名網(wǎng)頁授權(quán)域名授權(quán)回調(diào)域名不加協(xié)議頭綁定時(shí)微信要求將文件上傳根目錄,需要將文件添加到我項(xiàng)目許可中確保文件可被訪問,否則綁定不通過公眾平臺(tái)參數(shù)二授權(quán)登錄簡(jiǎn)

重新整理做過的功能,以及過程遇到問題,溫故而知新
官方文檔
一 準(zhǔn)備工作 (a.接入 b.配置)

a) 修改/添加 業(yè)務(wù)域名、網(wǎng)頁授權(quán)域名; 授權(quán)回調(diào)域名 不加 http:// 協(xié)議頭

綁定時(shí)微信要求將 *.txt文件上傳根目錄,需要將文件 添加到我項(xiàng)目.htaccess許可中 確保文件可被訪問,否則綁定不通過

b) 公眾平臺(tái) 參數(shù)

appid
secret

二 授權(quán)登錄

簡(jiǎn)單畫一個(gè)流程圖

網(wǎng)上很多人說微信瀏覽器 session 失效的問題,我測(cè)試并不存在; 不太懂為什么session會(huì)失效;暫時(shí)get不到

忽略了refresh_token 刷新access_token步驟

ci框架

    function __construct()    {
        parent::__construct();
        $this->load->library("session");
    }

    public function index() {
        if (!isset($_SESSION["wx_user_data"])) {
            // 1. 獲取緩存token: 如果token過期則通過 refresh_token獲取,都過期或首次請(qǐng)求則獲取code
            $code = $this->input->get("code");
            if (!$code) {
                //獲取現(xiàn)有token
                $access_token = $this->get_wx_access_token();
            }

            // 2. get access token
            $this->load->library("mycurl");
            $wx_get_token = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=".WX_APP_ID."&secret=".WX_SECRET."&code=".$code."&grant_type=authorization_code";
            list($returnCode, $returnContent) = $this->mycurl->curl_post_json_to_java($wx_get_token);
            $returnContent = json_decode($returnContent, true);

            if ($returnCode ===200 && !isset($returnContent["access_token"])) {
                die("error-page-todo-later".$returnContent["errcode"]);
            }

            $access_token  = $returnContent["access_token"];
            $refresh_token = $returnContent["refresh_token"];
            $expires_date  = time()+7100;
            $openid        = $returnContent["openid"];

            // 3. 刷新 access token
            // 4. 拉取用戶信息
            $wx_get_userinfo = "https://api.weixin.qq.com/sns/userinfo?access_token=".$access_token."&openid=".$openid."&lang=zh_CN";
            list($returnCode, $returnContent) = $this->mycurl->curl_post_json_to_java($wx_get_userinfo);
            $returnContent = json_decode($returnContent, true);

            if ($returnCode ===200 && isset($returnContent["errcode"])) {
                die("error-page-todo-later".$returnContent["errcode"]);
            }

            $userData = array();
            $userData["openid"]     = $returnContent["openid"];
            $userData["unionid"]    = $returnContent["unionid"];
            $userData["nickname"]   = $returnContent["nickname"];
            $userData["sex"]        = $returnContent["sex"];
            $userData["province"]   = $returnContent["province"];
            $userData["city"]       = $returnContent["city"];
            $userData["country"]    = $returnContent["country"];
            $userData["headimgurl"] = $returnContent["headimgurl"];
            $userData["privilege"]  = $returnContent["privilege"];

            // 5. session 存儲(chǔ)userData 緩存做不到每次從入口進(jìn)來實(shí)時(shí)刷新用戶信息
            $this->session->set_userdata("wx_user_data", $userData);
        }

        // 6. 項(xiàng)目主邏輯
        $templateData["userData"] = $_SESSION["wx_user_data"];
        $this->load->view("union_m/index.html", $templateData);
    }

    /**
     * 跳轉(zhuǎn)至授權(quán)頁面,公眾號(hào)入口 scope user-info 同樣靜默
     * @return [type] [description]
     */
    public function redirect_wx_url() {
        $wx_get_code  = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=".WX_APP_ID."&redirect_uri=".urlencode(UNION_INDEX)."&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect";
        $this->load->helper("url");
        redirect($wx_get_code);
    }

    // access token 維護(hù)
    public function get_wx_access_token() {
        // 1. 是否有未過期 token 直接return
        // 2. 是否有未過期 refresh_token 則獲取 token, 刷新access_token (忽略)
        // 3. 都不存在 首次授權(quán) 或 全部過期的情況 跳轉(zhuǎn)授權(quán)頁面
        $this->redirect_wx_url();
    }
結(jié)合項(xiàng)目最后實(shí)現(xiàn)地址

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/30767.html

相關(guān)文章

  • 淺析微信支付:開發(fā)前的準(zhǔn)備

    摘要:本文是淺析微信支付系列文章的第三篇,主要會(huì)講一下在開發(fā)前的一些注意事項(xiàng)。淺析微信支付系列已經(jīng)更新兩篇了喲,沒有看過的朋友們可以看一下。開通微信支付需要注冊(cè)登陸微信商戶平臺(tái),微信支付相關(guān)的信息都需要在這個(gè)平臺(tái)上進(jìn)行操作。 本文是【淺析微信支付】系列文章的第三篇,主要會(huì)講一下在開發(fā)前的一些注意事項(xiàng)。 淺析微信支付系列已經(jīng)更新兩篇了喲~,沒有看過的朋友們可以看一下。 淺析微信支付:前篇大綱...

    yanest 評(píng)論0 收藏0
  • 淺析微信支付:微信公眾號(hào)網(wǎng)頁授權(quán)

    摘要:淺析微信支付微信公眾號(hào)網(wǎng)頁授權(quán)本文是淺析微信支付系列文章的第四篇,主要講解微信支付前如何獲取獲取網(wǎng)頁授權(quán)及用戶信息獲取。淺析微信支付系列已經(jīng)更新三篇了喲,沒有看過的朋友們可以看一下哦。 淺析微信支付:微信公眾號(hào)網(wǎng)頁授權(quán) 本文是【淺析微信支付】系列文章的第四篇,主要講解微信支付前如何獲取獲取網(wǎng)頁授權(quán)及用戶信息獲取。 淺析微信支付系列已經(jīng)更新三篇了喲~,沒有看過的朋友們可以看一下哦。 淺...

    tinyq 評(píng)論0 收藏0
  • 小程序登錄、微信網(wǎng)頁授權(quán)(Java版)

    摘要:小程序登錄微信網(wǎng)頁授權(quán)版首先呢,登錄授權(quán)授權(quán)登錄,是一樣的意思,不用糾結(jié)。寫小程序授權(quán)登錄的代碼前,需要了解清楚與的區(qū)別,這里再簡(jiǎn)單介紹一下騰訊有個(gè)微信開放平臺(tái),只有企業(yè)才能注冊(cè)賬號(hào),可理解為微信體系里,最頂級(jí)的賬號(hào)。 小程序登錄、微信網(wǎng)頁授權(quán)(Java版) 首先呢,登錄、授權(quán)、授權(quán)登錄,是一樣的意思,不用糾結(jié)。 寫小程序授權(quán)登錄的代碼前,需要了解清楚openid與unionid的區(qū)別...

    joywek 評(píng)論0 收藏0
  • VueJs單頁應(yīng)用實(shí)現(xiàn)微信網(wǎng)頁授權(quán)微信分享功能

    摘要:在實(shí)際開發(fā)中,無論是做端端還是微信公眾號(hào)等類型的項(xiàng)目的時(shí)候,或多或少都會(huì)涉及到微信相關(guān)的開發(fā),最近公司項(xiàng)目要求實(shí)現(xiàn)微信網(wǎng)頁授權(quán),并獲取微信用戶基本信息的功能及微信分享的功能,現(xiàn)在總算完成了,但開發(fā)過程中遇到好幾個(gè)坑。 在實(shí)際開發(fā)中,無論是做PC端、WebApp端還是微信公眾號(hào)等類型的項(xiàng)目的時(shí)候,或多或少都會(huì)涉及到微信相關(guān)的開發(fā),最近公司項(xiàng)目要求實(shí)現(xiàn)微信網(wǎng)頁授權(quán),并獲取微信用戶基本信息的...

    doodlewind 評(píng)論0 收藏0
  • VueJs單頁應(yīng)用實(shí)現(xiàn)微信網(wǎng)頁授權(quán)微信分享功能

    摘要:在實(shí)際開發(fā)中,無論是做端端還是微信公眾號(hào)等類型的項(xiàng)目的時(shí)候,或多或少都會(huì)涉及到微信相關(guān)的開發(fā),最近公司項(xiàng)目要求實(shí)現(xiàn)微信網(wǎng)頁授權(quán),并獲取微信用戶基本信息的功能及微信分享的功能,現(xiàn)在總算完成了,但開發(fā)過程中遇到好幾個(gè)坑。 在實(shí)際開發(fā)中,無論是做PC端、WebApp端還是微信公眾號(hào)等類型的項(xiàng)目的時(shí)候,或多或少都會(huì)涉及到微信相關(guān)的開發(fā),最近公司項(xiàng)目要求實(shí)現(xiàn)微信網(wǎng)頁授權(quán),并獲取微信用戶基本信息的...

    BicycleWarrior 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<