http://www.ruanyifeng.com/blog/2019/04/oauth_design.html http://www.ruanyifeng.com/blog/2019/04/oauth-grant-types.html http://www.ruanyifeng.com/blog/2019/04/github-oauth.html