- _nosay
APP登陆以及OAUTH2全过程记录(二)
2017-08-30 15:53:53
关于授权码,也就是code的获取,我在官方文档中还是没有找到比较便捷的获取方法。去google又是一通搜,未果。没有办法,自己动手,丰衣足食吧。
首先,创立一个虚拟站点,体验一下完成的认证流程。由于服务端已经好了,客户端搭建起来就简单的多了。代码如下:
<?php use Illuminate\Http\Request; // First route that user visits on consumer app Route::get('/', function () { // Build the query parameter string to pass auth information to our request $query = http_build_query([ 'client_id' => 8, 'redirect_uri' => 'https://www.muzilong.cn/', 'response_type' => 'code', 'scope' => 'conference' ]); // Redirect the user to the OAuth authorization page return redirect('https://www.muzilong.cn/oauth/authorize?' . $query); });
我们根据文档所示,通过构造参数,访问链接。最终期望见到授权码(code)
打开网址,出现下面页面
完整流程是:点击授权,服务端会直接调取授权地址,并且把code传入url参数中,一起返回。
这样客户端拿到code就可以请求令牌了,关键还是这个code是如何生成的?
通过抓包发现