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)

    打开网址,出现下面页面

    image.png


    完整流程是:点击授权,服务端会直接调取授权地址,并且把code传入url参数中,一起返回。

    这样客户端拿到code就可以请求令牌了,关键还是这个code是如何生成的?

    通过抓包发现

image.png