在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
第三方登陆这个东东,目前主要是 微信、微博、qq、淘宝、支付宝 等几个。他们都是基于oath2 协议的。原理差不多。这里记录的是我测试的新郎微博登陆。请需要的同学参考下。
下载地址这种没有技术含量的东西就不说了,把下载好的文件包放到任意目录,建议根目录,在这我专门建立了Oauth文件夹,因为还需要qq登陆,微信。 所有文件如下: saetv2.ex.class.php 这个文件留下就行了,其它删除。 紧接着走配置文件 配置 App key. App Secrets, callback uri 新建api模块,Oauth 控制器
类代码 <?php namespace app\api\controller; use think\Controller; use think\Request; class OauthController extends Controller { private $o = null; public function __construct(Request $request = null) { parent::__construct($request); include_once( ROOT_PATH.'Oauth/weibo_login/saetv2.ex.class.php' ); $this->o = new \SaeTOAuthV2( config('WB_AKEY') , config('WB_SKEY') ); } public function weibo() { $code_url = $this->o->getAuthorizeURL( config('WB_CALLBACK_URL') ); header('location:'.$code_url); } public function weibocallback() { if (isset($_REQUEST['code'])) { $keys = array(); $keys['code'] = $_REQUEST['code']; $keys['redirect_uri'] = config('WB_CALLBACK_URL'); try { $token = $this->o->getAccessToken('code', $keys); } catch (OAuthException $e) { } }if ($token) { $_SESSION['token'] = $token; setcookie('weibojs_' . $this->o->client_id, http_build_query($token)); header('Location: /forum'); } } } 讲解下类吧,类构造函数加载了配置,实例化了我们需要用到的类, weibo方法,这个就是点击按钮跳转的地址,URL(‘api/Oauth/weibo’)就会定位到此方法,此方法会访问新浪的借口验证,如果成功会走weibocallback方法, token就是我们需要的数据了,可以入库操作。等,然后调回回调地址 然后你还可以添加其它的方法 如qq,进行qq登陆 , 今天就到这里,完了在补充 |
2022-08-16
2022-09-04
2022-08-17
2022-08-12
2022-08-15
请发表评论