摘要:想法最近公司要求接入微信,支付宝三方登录于是我萌生了一个想法,贡献一个开箱即用的的登录客户端,方便以后使用。也认识到想要把所有知识融会贯通起来,创建一个好的项目是很不容易的。
想法
</>复制代码
最近公司要求接入微信,支付宝三方登录, 于是我萌生了一个想法,贡献一个开箱即用的OAuth2.0的登录客户端,方便以后使用。
基本思想
通过这次经历学到了不少东西,包括git,github的使用, 面向对象程序设计,单元测试等等,感觉受益颇多。
也认识到想要把所有知识融会贯通起来,创建一个好的项目是很不容易的。还是要多实践才能出真知
实现
</>复制代码
授权类型 旨在区分各种不同的授权类型 如 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 {
// 用户取消授权
}
希望有相同想法的一起完善,指教
项目地址CnOAuth
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/28231.html
摘要:基础简要而言是一种安全机制用于应用连接到身份认证服务器获取用户信息并将这些信息以安全可靠的方法返回给应用。这些信息被保存在身份认证服务器以确保特定的客户端收到的信息只来自于合法的应用平台。 OpenID Connect OpenID Connect简介 OpenID Connect是基于OAuth 2.0规范族的可互操作的身份验证协议。它使用简单的REST / JSON消息流来实现,和...
摘要:为用户提供授权以允许用户操作非公开资源,有很多种方式。具体的代码根据不同的授权方案而有所不同。使用授权原理利用来验证用户,有两种机制实现。使用来实现用户授权主要用于签发如果有将异步的签名。注意这里的与之前用于签发的应该是同一个。 在很多应用中,我们都需要向服务端提供自己的身份凭证来获得访问一些非公开资源的授权。比如在一个博客平台,我们要修改自己的博客,那么服务端要求我们能够证明 我是...
摘要:本文单纯从简单的技术实现来讲,不涉及开放平台的多维度的运营理念。它的特点就是通过客户端的后台服务器,与服务提供商的认证服务器进行互动能够满足绝大多数开放平台认证授权的需求。 本文单纯从简单的技术实现来讲,不涉及开放平台的多维度的运营理念。 什么是开放平台 通过开放自己平台产品服务的各种API接口,让其他第三方开发者在开发应用时根据需求直接调用,例如微信登录、QQ登录、微信支付、微博登录...
摘要:本文单纯从简单的技术实现来讲,不涉及开放平台的多维度的运营理念。它的特点就是通过客户端的后台服务器,与服务提供商的认证服务器进行互动能够满足绝大多数开放平台认证授权的需求。 本文单纯从简单的技术实现来讲,不涉及开放平台的多维度的运营理念。 什么是开放平台 通过开放自己平台产品服务的各种API接口,让其他第三方开发者在开发应用时根据需求直接调用,例如微信登录、QQ登录、微信支付、微博登录...
阅读 1916·2021-11-25 09:43
阅读 1568·2021-09-02 15:21
阅读 3537·2019-08-30 15:52
阅读 1566·2019-08-30 12:48
阅读 1387·2019-08-30 10:57
阅读 2998·2019-08-26 17:41
阅读 751·2019-08-26 11:59
阅读 1434·2019-08-26 10:41