未验证 提交 4d5b7fb3 编写于 作者: DCloud_JSON's avatar DCloud_JSON 提交者: Gitee

update docs/tutorial/app-oauth-weixin.md.

上级 ab8b9a43
> 此文档为App端登说明,H5和小程序端[详情](https://uniapp.dcloud.io/api/plugins/login.html#login)
> 此文档为App端登说明,H5和小程序端[详情](https://uniapp.dcloud.io/api/plugins/login.html#login)
### 开通
- 登录[微信开放平台](https://open.weixin.qq.com/),添加移动应用并提交审核,审核通过后可获取应用ID(AppID),AppSecret等信息
......@@ -27,7 +27,7 @@ iOS平台通用链接,必须与微信开放平台配置的一致,推荐使
1. 客户端调用api向微信请求授权,获取临时票据(code),向开发者业务服务器发起网络请求
2. 业务服务器通过code + 仅保存在服务器的appsecret参数,向:微信开放平台接口发起网络请求[详情](https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=open1419317853&token=&lang=zh_CN)
3. 业务服务器成功获取用户信息后,再依据unionid或openid查数据库的用户表并生成新token,并返回token给客户端
4. 客户端得到token后,保存到storage完成登
4. 客户端得到token后,保存到storage完成登
示例代码
- uni-app项目
......@@ -37,14 +37,14 @@ uni.login({
"onlyAuthorize": true, // 微信登录仅请求授权认证
success: function(event){
const {code} = event
//客户端成功获取授权临时票据(code),向业务服务器发起登请求。
//客户端成功获取授权临时票据(code),向业务服务器发起登请求。
uni.request({
url: 'https://www.example.com/loginByWeixin', //仅为示例,并非真实接口地址。
data: {
code: event.code
},
success: (res) => {
//获得token完成登
//获得token完成登
uni.setStorageSync('token',res.token)
}
});
......@@ -72,14 +72,14 @@ plus.oauth.getServices(function(services) {
}
weixinOauth.authorize( function(event){
const {code} = event
//客户端成功获取授权临时票据(code),向业务服务器发起登请求。
//客户端成功获取授权临时票据(code),向业务服务器发起登请求。
uni.request({
url: 'https://www.example.com/loginByWeixin', //仅为示例,并非真实接口地址。
data: {
code: event.code
},
success: (res) => {
//获得token完成登
//获得token完成登
uni.setStorageSync('token',res.token)
}
});
......@@ -96,7 +96,7 @@ plus.oauth.getServices(function(services) {
#### 配置参数安全性问题
HBuilderX中配置的appsecret参数,云端打包后会保存在apk/ipa中,存在参数泄露的风险!HBuilderX3.4.18+ 不再提供此参数的可视化配置。
对于安全性要求较低的开发者,可以通过manifest.json -> 源码视图 -> app-plus -> distribute -> sdkConfigs -> oauth -> weixin -> 添加appsecret 配置。即可不经业务服务器验证完成登
对于安全性要求较低的开发者,可以通过manifest.json -> 源码视图 -> app-plus -> distribute -> sdkConfigs -> oauth -> weixin -> 添加appsecret 配置。即可不经业务服务器验证完成登
- uni-app项目
调用 [uni.login(OBJECT)](api/plugins/login?id=login) 发起授权登录,调用 [uni.getUserInfo(OBJECT)](https://uniapp.dcloud.io/api/plugins/login?id=getuserinfo) 获取用户信息,OBJECT参数中provider属性值固定为`weixin`
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册