Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
程序yang
unidocs-zh
提交
d71ba119
U
unidocs-zh
项目概览
程序yang
/
unidocs-zh
与 Fork 源项目一致
Fork自
DCloud / unidocs-zh
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
unidocs-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
d71ba119
编写于
1月 15, 2022
作者:
雪洛
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
docs: uni-id preferedAppPlatform
上级
b468d97c
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
38 addition
and
1 deletion
+38
-1
docs/uniCloud/uni-id.md
docs/uniCloud/uni-id.md
+38
-1
未找到文件。
docs/uniCloud/uni-id.md
浏览文件 @
d71ba119
...
...
@@ -151,7 +151,8 @@ exports.main = async (event, context) => {
"autoSetInviteCode"
:
false
,
//
是否在用户注册时自动设置邀请码,默认不自动设置
"forceInviteCode"
:
false
,
//
是否强制用户注册时必填邀请码,默认为
false
(需要注意的是目前只有短信验证码注册才可以填写邀请码)
,
设置为
true
时需要在loginBySms时指定type为register来使用注册,登录时也要传入type为login
"removePermissionAndRoleFromToken"
:
false
,
//
新增于uni-id
3.0
.
0
版本,如果配置为
false
则自动缓存用户的角色、权限到token中,默认值为
false
。详细说明见https://uniapp.dcloud.io/uniCloud/uni-id?id=cache-permission-in-token
"app-plus"
:
{
"preferedAppPlatform"
:
"app"
,
//
指定app端对应的PLATFORM名称,用于处理app-plus和app的兼容问题,详细说明见:https://uniapp.dcloud.net.cn/uniCloud/uni-id?id=prefered-app-platform
"app"
:
{
//
此处需和preferedAppPlatform保持一致
"tokenExpiresIn"
:
2592000
,
"oauth"
:
{
//
App微信登录所用到的appid、appsecret需要在微信开放平台获取,注意:不是公众平台而是开放平台
...
...
@@ -243,6 +244,42 @@ const userSegment = token.split('.')[1]
const
userInfo
=
atob
(
userSegment
)
// '{"uid":"61a593ba91a750000166f78d","role":["admin"],"permission":[],"iat":1638243365,"exp":1638250565}'
```
## preferedAppPlatform@prefered-app-platform
**前提介绍:**
uni-app vue2版本app端对应的platform为
`app-plus`
,uni-app vue3版本app端对应的platform为
`app`
。此改动引发了一些问题,比如在uni-id内使微信登录会无法匹配对应的平台导致登录报错。
由于uni-id将客户端平台存储在了数据库内(例如:app端微信登录的openid被存储为
`wx_openid['app-plus']`
),此问题无法平滑升级,因此对于新老项目建议分别处理。
### 旧项目的处理
旧项目建议将所有platform为app的场景统一为app-plus,即建议使用如下配置
```
js
// 以下仅列出相关配置
{
"
preferedAppPlatform
"
:
"
app-plus
"
,
// uni-id内部会将收到的app平台全部转化为app-plus平台
"
app-plus
"
:
{
// 配置内的平台名称和preferedAppPlatform保持一致
"
oauth
"
:
{}
}
}
```
### 新项目的处理
新项目建议将platform统一为app,即建议使用如下配置
```
js
// 以下仅列出相关配置
{
"
preferedAppPlatform
"
:
"
app
"
,
// uni-id内部会将收到的app-plus平台全部转化为app平台
"
app
"
:
{
// 配置内的平台名称和preferedAppPlatform保持一致
"
oauth
"
:
{}
}
}
```
# 用户角色权限@rbac
为什么需要角色权限管理?
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录