当前位置: 首页 > 后端技术 > Java

Web应用程序如何获取访问令牌?

时间:2023-04-02 10:25:06 Java

1。联盟中创建服务器应用参考文档:开发准备2.获取用户级AccessToken2.1获取代码参考文档:访问华为账号获取凭证2.1.1首先按照跳转链接配置urlhttps://oauth-login.cloud.huawei.com/oauth2/v3/authorize?response_type=code&access_type=offline&state=state_parameter_passthrough_value&client_id=APPID&redirect_uri=applicationcallbackaddress&scope=openid+profile接口描述及参数如下表:示例:创建测试App传入url:https://oauth-login.cloud.hua...2.1.2用户登录和授权当请求跳转到OAuth服务时,OAuth服务会引导用户进行授权,弹出一个授权页面供用户,并显示应用程序的名称和图标,以及应用程序申请授权的范围权限列表。输入华为帐号和密码,完成登录授权。2.1.3OAuth服务通过回调地址redirect_uri将响应值回调给应用程序。如果用户同意授权,则在回调请求中包含授权码。https://www.thirdwebdemo.com/redirect_url?code=<返回的授权码code>如果用户不同意授权,则在回调请求中包含错误信息。https://www.thirdwebdemo.com/redirect_url#error=1107&error_description=access+denied2.2通过代码获取AccessToken参考文档:AccessTokenAuthorizationCode有效期为5分钟,使用一次后失效。用户授权,生成授权码。2.2.1接口说明2.2.2直接通过代码获取access_token和refresh_token备注:通过2.1.3获取的代码在使用Postman请求示例前需要进行UrlDecode:请求示例:POST/oauth2/v3/tokenHTTP/1.1Host:oauth-login.cloud.huawei.comCache-Control:no-cachePostman-Token:923683a5-7379-03f5-b83f-072ba217fc65Content-Type:application/x-www-form-urlencodedgrant_type=authorization_code&code=DwEEABlWuXdOMrHWphJ7ixKxqkMiTfdoFX11KIcY0CP8gL2Qq5b5MNZpGtPWHKK5KBHm6u6KDP1BXq8JRunU4xIz4DV2zbdGCzEPCbuRaDz%2FzgbzWV6ty2K1TcbToSEdDszr1to17JbGiI5yM7oUx5kEf200rCvVBEGWy8a%2BBCADZ8%2BWPAAEd2O%2BUnjqoAhDSjs2s3ate0heX3DFAUrtwIOcZLCK%2FWby%2BU2oD2eaXX0CXhBNY5PE0nzBLxr4%2B5%2BYH%2BFh8%2BSssOl3repWjH0bxni8iQ%3D%3D&client_id=107408391&client_secret=caa9b93ef209bcb8f754a5742b7d617d5db2bd5901ae8656b60e79cca93825f8&redirect_uri=https%3A%2F%2Fwww.thirdwebdemo.com%2Fredirect_url2.2.3通过refresh_token获取access_tokencode的有效期只有5分钟,refresh_token的有效期半年,access_token有效期为1小时。不建议每次都获取code换取access_token,可以直接保存refresh_token,然后用refresh_token换取access_token。请求示例:POST/oauth2/v3/tokenHTTP/1.1Host:oauth-login.cloud.huawei.comCache-Control:no-cachePostman-Token:53d26c97-c7d8-3d49-042a-db7a4b2768a5Content-Type:application/x-www-form-urlencodedgrant_type=refresh_token&client_id=107408391&client_secret=caa9b93ef209bcb8f754a5742b7d617d5db2bd5901ae8656b60e79cca93825f8&refresh_token=DAECANR5QD9Ta3YKIn2Pwpmq8g6CyOGcsz3iNsxq8YXBpZs6EGlqb%2FM8Iyc%2FXVORdoqb%2FaZXKs9jqz72kQCmp9Om%2B7%2Fp7ff6QfH%2FKN32GwsE9xq%2BTbDT3获取应用级AccessToken参考文档:客户端模式(ClientCredentials)请求示例:POST/oauth2/v3/tokenHTTP/1.1Host:oauth-login.cloud.huawei.comCache-Control:no-cachePostman-Token:1e120cb0-fa6f-e622-1bf0-66a13c82b643Content-Type:application/x-www-form-urlencodedgrant_type=client_credentials&client_credentials&client_id=1caa9b93ef209bcb8f754a5742b7d617d5db2bd5901ae8656b60e79cca93825f8For更多详情>>访问华为开发者联盟官网获取开发指导文档华为移动服务开源仓库地址:关注我们的GitHub和Gitee,了解HMSCore的最新技术资讯~

最新推荐
猜你喜欢