参考文章了解OAuth2.0阮一峰--授权码模式,有差距OAuth2.0官网-授权码模式完整教程OAuth2.0官网-授权码请求组件用户申请1申请2processuser在浏览和使用应用1的过程中,当涉及到使用应用2的功能时,会产生oauth认证!以下具体步骤参考:LaravelpassportOAuth认证A.登录授权应用1携带如下查询字符串:response_typeclient_idredirect_uriscopestatcodexxxhttp://app.com/callback''auth跳转到应用2的登录授权界面,用户输入申请2使用帐号和密码登录。登录后会弹出是否授权应用1。B.生成授权码如果用户选择同意授权,App2会生成一个授权码,并用授权码跳回App1提供的redirect_uri。你可以在这个redirect_uri中做任何事情,比如保存授权码以后获取token,或者继续认证步骤通过授权码获取token。这里需要注意的是授权码的有效期!一般授权码的有效期比较短,10分钟左右。C、获取token前,使用链接跳转方式(Getrequest)进行操作。在当前这一步获取token之后,应该在server端使用post方法完成curl!!应用1提供如下参数(redirect_uri必须和步骤A一样!!):grant_typeclient_idclient_secretredirect_uricodeauthorization_codexxxxxxhttp://app.com/callbackxxx向应用2发起post请求获取token,应用2验证相关参数,响应传递后如下数据:{token_type:'',access_token:'xxx',refresh_token:'xxx',expire:'YYYY-MM-DDHH:II:SS'}应用1获取数据并保存到数据库中。D、调用应用1调用应用2的api,在应用1上提供应用2的服务!应用1在请求头中携带:Authorization:token_typeaccess_token调用应用2的API获取数据。疑惑如何判断get/post请求方式??get/post请求方式由实现者决定,即应用2,我上面举的例子是推荐的请求方式,实际请求方式要根据实现者提供的开发文档来决定!下面的字段是如何获取的??client_idapplicationidclient_secretapplicationkeyredirect_uri重定向uri//一般需要提供app_name应用名称app_url应用URL...等。提前申请1到申请2
