Web & Mini Program reference
Web 与小程序 API 概览
JavaScript SDK 面向浏览器、H5、uni-app 与微信小程序,提供 chat、好友关系、群组、消息历史、推送协同和音视频信令能力。
架构与入口
应用内应长期复用一个 flooim 实例,并在登录前注册事件;各业务 manager 负责缓存状态与远程操作。
Reference 导航
根据当前任务选择最精确的参考页面。以下条目均链接到本站托管的自动生成 API 文档。
flooim说明 flooim 的完整 API、参数、返回值、错误与回调约定。userManage说明 userManage 的完整 API、参数、返回值、错误与回调约定。rosterManage说明 rosterManage 的完整 API、参数、返回值、错误与回调约定。groupManage说明 groupManage 的完整 API、参数、返回值、错误与回调约定。sysManage说明 sysManage 的完整 API、参数、返回值、错误与回调约定。rtcManage说明 rtcManage 的完整 API、参数、返回值、错误与回调约定。推荐集成流程
- 使用控制台 App ID 完成配置,并在应用生命周期内复用单一客户端实例。
- 在登录前注册连接、用户、消息与群组监听器,避免遗漏初始同步事件。
- 使用后端签发的用户 token 登录;不要把服务端 access-token 放入客户端。
- 按业务领域调用服务或管理器,并以异步回调更新应用状态。
- 退出登录或销毁页面时移除监听器,并释放上传、下载与音视频资源。
使用时需要注意
- Web、uni-app 与原生微信小程序版共用相近的 API,但打包方式和传输配置不同。
- 连接与消息状态以回调和事件为准;异步方法返回不代表远端处理完成。
- floo 与 rtc 是兼容性标识符;产品说明使用 chat 与音视频。
继续阅读
Web & Mini Program
配置 Web SDK
选择与运行环境匹配的构建版本,创建一个长期复用的客户端,并在登录前注册事件。
选择合适的构建版本
Web用于桌面浏览器和常规前端应用。uni-app用于 H5、多厂商小程序,以及基于 DCloud uni-app 构建的应用。微信小程序符合微信小程序标准的原生版本,功能范围与 uni-app 版一致。
准备工程
- 直接在浏览器中集成时可下载 floo-3.0.0.js,也可以把对应 SDK 构建加入项目的包管理流程。
- 如需音视频能力,请在 package.json 中加入 webrtc-adapter 和 jquery,并通过包管理器安装。
- 先在控制台创建 App ID。整个应用生命周期应复用一个 SDK 实例,不要在每个页面中重复创建。
创建 SDK 实例
Web 版将 ws 设置为 false,uni-app 版设置为 true。两种加载方式使用同一个配置对象。
const config = {
// dnsServer: "https://dns.lanying.chat/v2/app_dns",
appid: "YOUR_APP_ID",
ws: false, // uniapp版需要设置为true, web版需要设置为false
autoLogin: true
};
兼容 Script 的加载方式
全局构造函数适合 script 标签集成。SDK 文件加载完成后再初始化,并通过重试逻辑处理脚本并发加载。
import "floo-3.0.0.js";
const im = new window.flooIM(config);
Module 加载方式
在打包项目中导入 flooim,并创建同一个长期复用的客户端实例。
import flooim from 'floo-3.0.0';
const im = flooim(config);
登录与事件监听
登录前注册连接和消息事件,以免遗漏初始状态。页面或应用销毁时,使用同一个处理函数调用 off 取消监听。
im.login({
mobile:String, #与name 2选1
name:String,
password:String,
})
im.on('events', (ret) => {
//do something with ret
})
// or
im.on({
eventName: (ret) => {
//do something with ret
},
...
})
im.off('events', (ret) => {
//do something with ret
})
// or
im.off({
eventName: (ret) => {
//do something with ret
},
...
})
使用功能管理器
userManage 管理当前账号,rosterManage 管理好友与单聊历史,groupManage 管理群组,sysManage 收发消息,rtcManage 处理音视频信令。
集成注意事项
- Web、uni-app 与原生微信小程序版的概念 API 基本一致,但打包方式和传输配置不同。
- 异步调用应以回调和事件为 UI 状态依据,而不是以方法立即返回为准。
- 部分操作读取缓存,对应的 async 方法会从服务端刷新;应根据场景明确选择。
- API 标识符必须与文档保持一致,包括为兼容保留的 floo 和 rtc 名称。