成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

一個(gè)簡單的PHP微信OAuth2.0登錄客戶端

shengguo / 1805人閱讀

摘要:想法最近公司要求接入微信,支付寶三方登錄于是我萌生了一個(gè)想法,貢獻(xiàn)一個(gè)開箱即用的的登錄客戶端,方便以后使用。也認(rèn)識(shí)到想要把所有知識(shí)融會(huì)貫通起來,創(chuàng)建一個(gè)好的項(xiàng)目是很不容易的。

想法
最近公司要求接入微信,支付寶三方登錄, 于是我萌生了一個(gè)想法,貢獻(xiàn)一個(gè)開箱即用的OAuth2.0的登錄客戶端,方便以后使用。
基本思想
通過這次經(jīng)歷學(xué)到了不少東西,包括git,github的使用, 面向?qū)ο蟪绦蛟O(shè)計(jì),單元測(cè)試等等,感覺受益頗多。
也認(rèn)識(shí)到想要把所有知識(shí)融會(huì)貫通起來,創(chuàng)建一個(gè)好的項(xiàng)目是很不容易的。還是要多實(shí)踐才能出真知
實(shí)現(xiàn)
基本抽象
Provider 服務(wù)提供者 例如 支付寶,微信等OAuth服務(wù)端

授權(quán)類型 旨在區(qū)分各種不同的授權(quán)類型 如 authorization, password 等
getName();
        $provided = array_merge($defaults, $options);

        $this->checkRequiredParameters($provided);

        return $provided;
    }

    abstract protected function checkRequiredParameters(array $options);
}
使用

redirect.php

 "you client id",
        "clientSecret" => "you client secret",
        "redirectUri" => "redirect uri"
    ]);

    $url = $wechat->getAuthorizationUrl([
        "scope" => $this->getDefaultScopes(),
        "state" => "state"
    ]);

    header("Location: ".$url);

callback.php

    # 微信
    $wechat = new CnOAuthProviderWechatOfficialAccount([
        "clientId" => "you client id",
        "clientSecret" => "you client secret",
        "redirectUri" => "redirect uri"
    ]);
    $grant = $wechat->getGrant("authorization");

    if ($grant->getCode()) {
        $access_token = $wechat->getAccessToken($grant);

        $owner = $wechat->getResourceOwner($access_token);

        print_r($owner->toArray());
    } else {
        // 用戶取消授權(quán)
    }

希望有相同想法的一起完善,指教
項(xiàng)目地址CnOAuth

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

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/28231.html

相關(guān)文章

  • 說說微信掃碼登錄

    摘要:詳情接口我們這里主要講的是網(wǎng)站應(yīng)用,網(wǎng)站應(yīng)用微信登錄是基于協(xié)議標(biāo)準(zhǔn)構(gòu)建的微信授權(quán)登錄系統(tǒng)即上面的協(xié)議。在微信客戶端授權(quán)登錄獲取用戶信息的可以查看。微信授權(quán)登錄目前支持模式,適用于擁有端的應(yīng)用授權(quán)。 一、OAuth2.0 OAuth(開放授權(quán))是一個(gè)開放標(biāo)準(zhǔn),允許用戶讓第三方應(yīng)用訪問該用戶在某一網(wǎng)站上存儲(chǔ)的私密的資源(如照片,視頻,聯(lián)系人列表),而無需將用戶名和密碼提供給第三方應(yīng)用。 ...

    Jokcy 評(píng)論0 收藏0
  • PHPOauth2.0嘗試 - OpenID Connect

    摘要:基礎(chǔ)簡要而言是一種安全機(jī)制用于應(yīng)用連接到身份認(rèn)證服務(wù)器獲取用戶信息并將這些信息以安全可靠的方法返回給應(yīng)用。這些信息被保存在身份認(rèn)證服務(wù)器以確保特定的客戶端收到的信息只來自于合法的應(yīng)用平臺(tái)。 OpenID Connect OpenID Connect簡介 OpenID Connect是基于OAuth 2.0規(guī)范族的可互操作的身份驗(yàn)證協(xié)議。它使用簡單的REST / JSON消息流來實(shí)現(xiàn),和...

    saucxs 評(píng)論0 收藏0
  • JWT、OAuth 2.0、session 用戶授權(quán)實(shí)戰(zhàn)

    摘要:為用戶提供授權(quán)以允許用戶操作非公開資源,有很多種方式。具體的代碼根據(jù)不同的授權(quán)方案而有所不同。使用授權(quán)原理利用來驗(yàn)證用戶,有兩種機(jī)制實(shí)現(xiàn)。使用來實(shí)現(xiàn)用戶授權(quán)主要用于簽發(fā)如果有將異步的簽名。注意這里的與之前用于簽發(fā)的應(yīng)該是同一個(gè)。 在很多應(yīng)用中,我們都需要向服務(wù)端提供自己的身份憑證來獲得訪問一些非公開資源的授權(quán)。比如在一個(gè)博客平臺(tái),我們要修改自己的博客,那么服務(wù)端要求我們能夠證明 我是...

    Jochen 評(píng)論0 收藏0
  • 基于oauth 2.0 實(shí)現(xiàn)第三方開放平臺(tái)

    摘要:本文單純從簡單的技術(shù)實(shí)現(xiàn)來講,不涉及開放平臺(tái)的多維度的運(yùn)營理念。它的特點(diǎn)就是通過客戶端的后臺(tái)服務(wù)器,與服務(wù)提供商的認(rèn)證服務(wù)器進(jìn)行互動(dòng)能夠滿足絕大多數(shù)開放平臺(tái)認(rèn)證授權(quán)的需求。 本文單純從簡單的技術(shù)實(shí)現(xiàn)來講,不涉及開放平臺(tái)的多維度的運(yùn)營理念。 什么是開放平臺(tái) 通過開放自己平臺(tái)產(chǎn)品服務(wù)的各種API接口,讓其他第三方開發(fā)者在開發(fā)應(yīng)用時(shí)根據(jù)需求直接調(diào)用,例如微信登錄、QQ登錄、微信支付、微博登錄...

    Simon 評(píng)論0 收藏0
  • 基于oauth 2.0 實(shí)現(xiàn)第三方開放平臺(tái)

    摘要:本文單純從簡單的技術(shù)實(shí)現(xiàn)來講,不涉及開放平臺(tái)的多維度的運(yùn)營理念。它的特點(diǎn)就是通過客戶端的后臺(tái)服務(wù)器,與服務(wù)提供商的認(rèn)證服務(wù)器進(jìn)行互動(dòng)能夠滿足絕大多數(shù)開放平臺(tái)認(rèn)證授權(quán)的需求。 本文單純從簡單的技術(shù)實(shí)現(xiàn)來講,不涉及開放平臺(tái)的多維度的運(yùn)營理念。 什么是開放平臺(tái) 通過開放自己平臺(tái)產(chǎn)品服務(wù)的各種API接口,讓其他第三方開發(fā)者在開發(fā)應(yīng)用時(shí)根據(jù)需求直接調(diào)用,例如微信登錄、QQ登錄、微信支付、微博登錄...

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

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

0條評(píng)論

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