Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
unidocs-unicloud-zh
提交
e5dc55b8
U
unidocs-unicloud-zh
项目概览
DCloud
/
unidocs-unicloud-zh
通知
124
Star
4
Fork
31
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
2
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
unidocs-unicloud-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
2
合并请求
2
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
e5dc55b8
编写于
5月 28, 2024
作者:
Anne_LXM
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
调整文档格式
上级
f846fd01
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
39 addition
and
39 deletion
+39
-39
docs/uni-im.md
docs/uni-im.md
+39
-39
未找到文件。
docs/uni-im.md
浏览文件 @
e5dc55b8
...
...
@@ -158,14 +158,14 @@ export default defineConfig({
6.
登录uni-im
uni-im的服务端代码托管在uniCloud下,账户体系是[uni-id 4.0+](https://uniapp.dcloud.net.cn/uniCloud/uni-id/summary.html)的;
uni-app生态下绝大部分项目的架构与uni-im相同,所以不需要考虑账号打通问题,用户登录项目后,不需要额外登录uni-im。
uni-im的服务端代码托管在uniCloud下,账户体系是
[
uni-id 4.0+
](
https://uniapp.dcloud.net.cn/uniCloud/uni-id/summary.html
)
的;
uni-app生态下绝大部分项目的架构与uni-im相同,所以不需要考虑账号打通问题,用户登录项目后,不需要额外登录uni-im。
而有些传统项目,服务端的开发语言是php、java、go、.net、python、c#等,是自己设计的账号体系;
用户登录所获得的token,与uni-im所需的token不是同一个账号体系;
需要在传统服务器端,通过
[
uni-id的外部系统联登
](
./uni-id/cloud-object.md#external
)
同步你项目的账号数据到uni-im用户体系并获得uni-id的token,按如下示例代码完成登录。
而有些传统项目,服务端的开发语言是php、java、go、.net、python、c#等,是自己设计的账号体系;
用户登录所获得的token,与uni-im所需的token不是同一个账号体系;
需要在传统服务器端,通过
[
uni-id的外部系统联登
](
./uni-id/cloud-object.md#external
)
同步你项目的账号数据到uni-im用户体系并获得uni-id的token,按如下示例代码完成登录。
```js
```
js
import
{
mutations
as
uniIdMutations
}
from
'
@/uni_modules/uni-id-pages/common/store.js
'
;
uni
.
request
({
url
:
'
https://www.example.com/login
'
,
//仅为示例,并非真实接口地址。
...
...
@@ -205,44 +205,44 @@ export default defineConfig({
}
});
```
```
其他情况:
其他情况:
- 客户端如果不是uni-app的,如果是网页,可iframe内嵌。如果是原生app,可嵌入[uni小程序sdk](https://nativesupport.dcloud.net.cn/README)
-
客户端如果不是uni-app的,如果是网页,可iframe内嵌。如果是原生app,可嵌入
[
uni小程序sdk
](
https://nativesupport.dcloud.net.cn/README
)
- 不基于`uni-id-pages`的客户端代码,仅基于`uni-id-co`的项目,需要在登录成功和用户信息更新时,同步更新uniId store内的当前用户信息(uni-im显示当前用户头像、昵称时会用到)示例代码:
-
不基于
`uni-id-pages`
的客户端代码,仅基于
`uni-id-co`
的项目,需要在登录成功和用户信息更新时,同步更新uniId store内的当前用户信息(uni-im显示当前用户头像、昵称时会用到)示例代码:
```js
//导入uniCloud客户端账户体系,用户信息状态管理模块
import {mutations as uniIdMutations} from '@/uni_modules/uni-id-pages/common/store.js';
await uniIdMutations.updateUserInfo()
```
- 基于老版uni-id(版本号:3.x) 开发的项目,需要如下改造:
1. 在登录成功和token续期后,绑定当前账号与设备推送标识的关联关系。示例代码:
```
js
//导入uniCloud客户端账户体系,用户信息状态管理模块
import
{
mutations
as
uniIdMutations
}
from
'
@/uni_modules/uni-id-pages/common/store.js
'
;
await
uniIdMutations
.
updateUserInfo
()
```
-
基于老版uni-id(版本号:3.x) 开发的项目,需要如下改造:
1.
在登录成功和token续期后,绑定当前账号与设备推送标识的关联关系。示例代码:
```js
const uniIdCo = uniCloud.importObject("uni-id-co", {customUI: true})
uni.getPushClientId({
success: async function(e) {
console.log(e)
let pushClientId = e.cid
let res = await uniIdCo.setPushCid({
pushClientId
})
console.log('getPushClientId', res);
},
fail(e) {
console.error(e)
}
})
```
2. 在登录成功和用户信息更新时,同步更新uniId store内的当前用户信息(uni-im显示当前用户头像、昵称时会用到)示例代码:
```js
//导入uniCloud客户端账户体系,用户信息状态管理模块
import {mutations as uniIdMutations} from '@/uni_modules/uni-id-pages/common/store.js';
await uniIdMutations.updateUserInfo()
```
```
js
const
uniIdCo
=
uniCloud
.
importObject
(
"
uni-id-co
"
,
{
customUI
:
true
})
uni
.
getPushClientId
({
success
:
async
function
(
e
)
{
console
.
log
(
e
)
let
pushClientId
=
e
.
cid
let
res
=
await
uniIdCo
.
setPushCid
({
pushClientId
})
console
.
log
(
'
getPushClientId
'
,
res
);
},
fail
(
e
)
{
console
.
error
(
e
)
}
})
```
2.
在登录成功和用户信息更新时,同步更新uniId store内的当前用户信息(uni-im显示当前用户头像、昵称时会用到)示例代码:
```
js
//导入uniCloud客户端账户体系,用户信息状态管理模块
import
{
mutations
as
uniIdMutations
}
from
'
@/uni_modules/uni-id-pages/common/store.js
'
;
await
uniIdMutations
.
updateUserInfo
()
```
7.
确保账户对接成功后,打开“用户列表页”,路径:
`/uni_modules/uni-im/pages/userList/userList`
可以看到所有的注册用户
8.
点击某个用户,会自动创建与该用户的会话,并打开“聊天对话页”(路径:
`/uni_modules/uni-im/pages/chat/chat`
),然后就可以开始聊天了。
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录