使用环信 App Token 鉴权

环信提供的 REST API 需要 app token (管理员权限 token) 才能使用,即发送 HTTP 请求时需要携带 app token。本文介绍如何获取 app token。

另外,环信 Server SDK 提供了用户、消息、群组、聊天室等资源的操作管理能力,详见 Java Server SDK 和 PHP Server SDK

获取管理员权限 Token

获取 token 时,服务器会返回 token 有效期,即响应中的 expires_in 字段的值。由于网络延迟等原因,系统不保证 token 在此值表示的有效期内绝对有效。如果发现 token 使用异常,如返回 HTTP 状态码 401,请重新获取新的 token。

注意

请不要频繁向服务器发送获取 token 的请求,同一账号发送此请求超过一定频率会被服务器封禁。

HTTP 请求

POST {https://host}/{org_name}/{app_name}/token

路径参数

参数类型是否必需描述
hostString环信即时通讯 IM 分配的用于访问 RESTful API 的域名。详见 获取环信即时通讯 IM 的信息
org_nameString环信即时通讯 IM 为每个公司(组织)分配的唯一标识。详见 获取环信即时通讯 IM 的信息
app_nameString你在环信即时通讯云控制台创建应用时填入的应用名称。详见 获取环信即时通讯 IM 的信息

请求 header

参数类型是否必需描述
Content-TypeString内容类型。请填 application/json
AcceptString内容类型。请填 application/json

请求 body

参数类型是否必需描述
grant_typeString授权方式。该参数设置为固定字符串 client_credentials,即客户端凭证模式。
client_idStringApp 的 client_id,用于生成 app token 调用 REST API。详见 环信即时通讯云控制台 (opens new window)应用详情页面。
client_secretStringApp 的 client_secret,用于生成 app token 调用 REST API。详见 环信即时通讯云控制台 (opens new window)应用详情页面。
ttlLongtoken 有效期,单位为秒(s)。设置为 0 则 token 有效期为永久。若不传该参数,默认值为 60 天,也可通过环信即时通讯云控制台 (opens new window)用户认证页面设置。该参数值以最新设置为准。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示成功返回 token。响应 body 包含如下字段:

参数类型描述
access_tokenString有效的 Token 字符串。
expires_inLongToken 有效时间,单位为秒,在有效期内不需要重复获取。
applicationString当前 App 的 UUID 值。

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考 响应状态码 了解可能的原因。

示例

请求示例

curl -X POST -H 'Content-Type: application/json' -H 'Accept: application/json' -d '{
   "grant_type": "client_credentials",
   "client_id": "YXA6i-Ak8Ol4Eei2l11ZjV-EAg",
   "client_secret": "YXA6VunqiNxoB7IwXHInk1cGiXOOJfc",
   "ttl": "1024000"
 }' 'http://a1.easemob.com/easemob-demo/testapp/token'

响应示例

{
  "access_token": "YWMte3bGuOukEeiTkNP4grL7iwAAAAAAAAAAAAAAAAAAAAGL4CTw6XgR6LaXXVmNX4QCAgMAAAFnKdc-ZgBPGgBFTrLhhyK8woMEI005emtrLJFJV6aoxsZSioSIZkr5kw",
  "expires_in": 1024000,
  "application": "8be024f0-e978-11e8-b697-5d598d5f8402"
}

chat 聊天 APP开发接入 环信 IM即时通讯SDK教程

用做网页的技术做APP
一门提供标准化的jsbridge-mini.js库,您只需要在页面引用执行JS即可实现各种原生APP、原生PC的功能能力。

==================APP端==================
【APP端】(安卓版&苹果版)目前提供200+原生功能,2000+JS映射接口,用做网站的技术即可实现各种原生APP能力、APP demo地址https://www.yimenapp.com/doc/demo.cshtml下载教程:
♦ JS-SDK 引用方式:
♦ 普通网页 script 方式加载:下载最新版,请在页面上调用 jsBridge 接口之前引用 jsbridge-mini.js 库;
♦ js module 方式引用:npm install ym-jsbridge 具体请参考 npm package
一门APP开发平台通用JS

chat 聊天 APP开发接入 环信 IM即时通讯SDK教程

核心代码示例,详情参阅demo

jsBridge.easeIm.chat({
  //字符串,标题栏文字,一般用对方昵称或备注
  title: $("#chat_title").val(),
  //字符串,会话ID,单聊时指对方ID,群聊和聊天室时指群和聊天室ID
  conversationId: $("#chat_conversationId").val(),
  //字符串,聊天类型
  //single 单聊
  //group  群聊
  //room   聊天室
  chatType: $("#chat_chatType").val(),
  //字符串,消息ID,用于查询历史记录时的定位消息ID
  historyMsgId: $("#chat_historyMsgId").val(),
  //布尔,是否开启漫游,用于标记是否优先从服务器拉取消息
  isRoam: JSON.parse($("#chat_isRoam").val()),
  //字符串,输入区菜单样式
  //all                     完整模式
  //disableVoice            不可用语音
  //disableEmojIcon         不可用表情
  //disableVoiceEmojIcon    不可用语音和表情
  //onlyText                仅文本输入
  inputMenuStyle: $("#chat_inputMenuStyle").val(),
  //字符串数组,点 + 号打开的扩展功能
  //留空则全部显示
  inputExtItems: [
    "camera",   //相机
    "album",    //相册
    "video",    //视频
    "file"      //文件
  ]
}, function(succ, data) {
  if (!succ) {
    alert("开启聊天失败\n" + JSON.stringify(data));
  }
});

A标签执行JS示例代码

<a href="javascript:void(0)" onclick="zhixing()">执行</a> 
<!-- 写入一个A标签href值为"javascript:void(0)",定义点击事件onclick;-->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- 在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接;-->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.easeIm.chat({
  //字符串,标题栏文字,一般用对方昵称或备注
  title: $("#chat_title").val(),
  //字符串,会话ID,单聊时指对方ID,群聊和聊天室时指群和聊天室ID
  conversationId: $("#chat_conversationId").val(),
  //字符串,聊天类型
  //single 单聊
  //group  群聊
  //room   聊天室
  chatType: $("#chat_chatType").val(),
  //字符串,消息ID,用于查询历史记录时的定位消息ID
  historyMsgId: $("#chat_historyMsgId").val(),
  //布尔,是否开启漫游,用于标记是否优先从服务器拉取消息
  isRoam: JSON.parse($("#chat_isRoam").val()),
  //字符串,输入区菜单样式
  //all                     完整模式
  //disableVoice            不可用语音
  //disableEmojIcon         不可用表情
  //disableVoiceEmojIcon    不可用语音和表情
  //onlyText                仅文本输入
  inputMenuStyle: $("#chat_inputMenuStyle").val(),
  //字符串数组,点 + 号打开的扩展功能
  //留空则全部显示
  inputExtItems: [
    "camera",   //相机
    "album",    //相册
    "video",    //视频
    "file"      //文件
  ]
}, function(succ, data) {
  if (!succ) {
    alert("开启聊天失败\n" + JSON.stringify(data));
  }
});

}
</script>
<!--执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可;-->

按钮执行JS示例代码

<button onclick="zhixing()" >执行</button>
<!-- //写一个按钮,定义点击执行事件; -->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- //在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接; -->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.easeIm.chat({
  //字符串,标题栏文字,一般用对方昵称或备注
  title: $("#chat_title").val(),
  //字符串,会话ID,单聊时指对方ID,群聊和聊天室时指群和聊天室ID
  conversationId: $("#chat_conversationId").val(),
  //字符串,聊天类型
  //single 单聊
  //group  群聊
  //room   聊天室
  chatType: $("#chat_chatType").val(),
  //字符串,消息ID,用于查询历史记录时的定位消息ID
  historyMsgId: $("#chat_historyMsgId").val(),
  //布尔,是否开启漫游,用于标记是否优先从服务器拉取消息
  isRoam: JSON.parse($("#chat_isRoam").val()),
  //字符串,输入区菜单样式
  //all                     完整模式
  //disableVoice            不可用语音
  //disableEmojIcon         不可用表情
  //disableVoiceEmojIcon    不可用语音和表情
  //onlyText                仅文本输入
  inputMenuStyle: $("#chat_inputMenuStyle").val(),
  //字符串数组,点 + 号打开的扩展功能
  //留空则全部显示
  inputExtItems: [
    "camera",   //相机
    "album",    //相册
    "video",    //视频
    "file"      //文件
  ]
}, function(succ, data) {
  if (!succ) {
    alert("开启聊天失败\n" + JSON.stringify(data));
  }
});

}
</script>
<!-- //执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可; -->

unreadMessageCount 未读消息数量 APP开发接入环信 IM即时通讯SDK教程

用做网页的技术做APP
一门提供标准化的jsbridge-mini.js库,您只需要在页面引用执行JS即可实现各种原生APP、原生PC的功能能力。

==================APP端==================
【APP端】(安卓版&苹果版)目前提供200+原生功能,2000+JS映射接口,用做网站的技术即可实现各种原生APP能力、APP demo地址https://www.yimenapp.com/doc/demo.cshtml下载教程:
♦ JS-SDK 引用方式:
♦ 普通网页 script 方式加载:下载最新版,请在页面上调用 jsBridge 接口之前引用 jsbridge-mini.js 库;
♦ js module 方式引用:npm install ym-jsbridge 具体请参考 npm package
一门APP开发平台通用JS

unreadMessageCount 未读消息数量 APP开发接入环信 IM即时通讯SDK教程

核心代码示例,详情参阅demo

jsBridge.easeIm.unreadMessageCount({
  //可选,会话ID,留空则返回所有会话的总未读消息数
  conversationId: $("#unread_conversationId").val()
}, function(succ, data) {
  alert(succ ? data.count : JSON.stringify(data));
});

A标签执行JS示例代码

<a href="javascript:void(0)" onclick="zhixing()">执行</a> 
<!-- 写入一个A标签href值为"javascript:void(0)",定义点击事件onclick;-->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- 在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接;-->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.easeIm.unreadMessageCount({
  //可选,会话ID,留空则返回所有会话的总未读消息数
  conversationId: $("#unread_conversationId").val()
}, function(succ, data) {
  alert(succ ? data.count : JSON.stringify(data));
});

}
</script>
<!--执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可;-->

按钮执行JS示例代码

<button onclick="zhixing()" >执行</button>
<!-- //写一个按钮,定义点击执行事件; -->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- //在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接; -->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.easeIm.unreadMessageCount({
  //可选,会话ID,留空则返回所有会话的总未读消息数
  conversationId: $("#unread_conversationId").val()
}, function(succ, data) {
  alert(succ ? data.count : JSON.stringify(data));
});

}
</script>
<!-- //执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可; -->

status 获取当前状态 APP开发接入环信 IM即时通讯SDK

用做网页的技术做APP
一门提供标准化的jsbridge-mini.js库,您只需要在页面引用执行JS即可实现各种原生APP、原生PC的功能能力。

==================APP端==================
【APP端】(安卓版&苹果版)目前提供200+原生功能,2000+JS映射接口,用做网站的技术即可实现各种原生APP能力、APP demo地址https://www.yimenapp.com/doc/demo.cshtml下载教程:
♦ JS-SDK 引用方式:
♦ 普通网页 script 方式加载:下载最新版,请在页面上调用 jsBridge 接口之前引用 jsbridge-mini.js 库;
♦ js module 方式引用:npm install ym-jsbridge 具体请参考 npm package
一门APP开发平台通用JS

status 获取当前状态 APP开发接入环信 IM即时通讯SDK

核心代码示例,详情参阅demo

jsBridge.easeIm.status(function(succ, data) {
  //data.inited     是否已初始化
  //data.connected  是否已连接到IM服务器
  //data.logined    是否已登录
  //data.username   已登录时,当前登录的用户ID
  alert(JSON.stringify(data));
});

A标签执行JS示例代码

<a href="javascript:void(0)" onclick="zhixing()">执行</a> 
<!-- 写入一个A标签href值为"javascript:void(0)",定义点击事件onclick;-->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- 在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接;-->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.easeIm.status(function(succ, data) {
  //data.inited     是否已初始化
  //data.connected  是否已连接到IM服务器
  //data.logined    是否已登录
  //data.username   已登录时,当前登录的用户ID
  alert(JSON.stringify(data));
});

}
</script>
<!--执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可;-->

按钮执行JS示例代码

<button onclick="zhixing()" >执行</button>
<!-- //写一个按钮,定义点击执行事件; -->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- //在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接; -->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.easeIm.status(function(succ, data) {
  //data.inited     是否已初始化
  //data.connected  是否已连接到IM服务器
  //data.logined    是否已登录
  //data.username   已登录时,当前登录的用户ID
  alert(JSON.stringify(data));
});

}
</script>
<!-- //执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可; -->

userInfo 设置用户信息 APP开发接入环信 IM即时通讯SDK教程

用做网页的技术做APP
一门提供标准化的jsbridge-mini.js库,您只需要在页面引用执行JS即可实现各种原生APP、原生PC的功能能力。

==================APP端==================
【APP端】(安卓版&苹果版)目前提供200+原生功能,2000+JS映射接口,用做网站的技术即可实现各种原生APP能力、APP demo地址https://www.yimenapp.com/doc/demo.cshtml下载教程:
♦ JS-SDK 引用方式:
♦ 普通网页 script 方式加载:下载最新版,请在页面上调用 jsBridge 接口之前引用 jsbridge-mini.js 库;
♦ js module 方式引用:npm install ym-jsbridge 具体请参考 npm package
一门APP开发平台通用JS

userInfo 设置用户信息 APP开发接入环信 IM即时通讯SDK教程

核心代码示例,详情参阅demo

jsBridge.easeIm.userInfo({
  //可选,默认头像图片链接
  avatar: "https://www.yimenapp.com/assets/trtc/a.png",
  //可选,设置一组用户信息
  //以 username 为唯一标识增加或覆盖已有的用户信息
  users: [
    {
      //字符串,用户ID
      username: "user1",
      //字符串,昵称
      nickname: "张三",
      //字符串,头像图片链接
      avatar  : "https://www.yimenapp.com/assets/trtc/a1.png"
    },
    {
      username: "user2",
      nickname: "李四",
      avatar  : "https://www.yimenapp.com/assets/trtc/a2.png"
    }
  ]
}, function(succ, data) {
  alert(succ ? "设置成功" : "设置失败\n" + JSON.stringify(data));
});

A标签执行JS示例代码

<a href="javascript:void(0)" onclick="zhixing()">执行</a> 
<!-- 写入一个A标签href值为"javascript:void(0)",定义点击事件onclick;-->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- 在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接;-->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.easeIm.userInfo({
  //可选,默认头像图片链接
  avatar: "https://www.yimenapp.com/assets/trtc/a.png",
  //可选,设置一组用户信息
  //以 username 为唯一标识增加或覆盖已有的用户信息
  users: [
    {
      //字符串,用户ID
      username: "user1",
      //字符串,昵称
      nickname: "张三",
      //字符串,头像图片链接
      avatar  : "https://www.yimenapp.com/assets/trtc/a1.png"
    },
    {
      username: "user2",
      nickname: "李四",
      avatar  : "https://www.yimenapp.com/assets/trtc/a2.png"
    }
  ]
}, function(succ, data) {
  alert(succ ? "设置成功" : "设置失败\n" + JSON.stringify(data));
});

}
</script>
<!--执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可;-->

按钮执行JS示例代码

<button onclick="zhixing()" >执行</button>
<!-- //写一个按钮,定义点击执行事件; -->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- //在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接; -->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.easeIm.userInfo({
  //可选,默认头像图片链接
  avatar: "https://www.yimenapp.com/assets/trtc/a.png",
  //可选,设置一组用户信息
  //以 username 为唯一标识增加或覆盖已有的用户信息
  users: [
    {
      //字符串,用户ID
      username: "user1",
      //字符串,昵称
      nickname: "张三",
      //字符串,头像图片链接
      avatar  : "https://www.yimenapp.com/assets/trtc/a1.png"
    },
    {
      username: "user2",
      nickname: "李四",
      avatar  : "https://www.yimenapp.com/assets/trtc/a2.png"
    }
  ]
}, function(succ, data) {
  alert(succ ? "设置成功" : "设置失败\n" + JSON.stringify(data));
});

}
</script>
<!-- //执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可; -->

logout 退出 APP开发接入环信 IM即时通讯SDK

用做网页的技术做APP
一门提供标准化的jsbridge-mini.js库,您只需要在页面引用执行JS即可实现各种原生APP、原生PC的功能能力。

==================APP端==================
【APP端】(安卓版&苹果版)目前提供200+原生功能,2000+JS映射接口,用做网站的技术即可实现各种原生APP能力、APP demo地址https://www.yimenapp.com/doc/demo.cshtml下载教程:
♦ JS-SDK 引用方式:
♦ 普通网页 script 方式加载:下载最新版,请在页面上调用 jsBridge 接口之前引用 jsbridge-mini.js 库;
♦ js module 方式引用:npm install ym-jsbridge 具体请参考 npm package
一门APP开发平台通用JS

logout 退出 APP开发接入环信 IM即时通讯SDK

核心代码示例,详情参阅demo


jsBridge.easeIm.logout(function(succ, data) {
  alert(succ ? "退出成功" : "退出失败\n" + JSON.stringify(data));
});

A标签执行JS示例代码

<a href="javascript:void(0)" onclick="zhixing()">执行</a> 
<!-- 写入一个A标签href值为"javascript:void(0)",定义点击事件onclick;-->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- 在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接;-->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.easeIm.logout(function(succ, data) {
  alert(succ ? "退出成功" : "退出失败\n" + JSON.stringify(data));
});

}
</script>
<!--执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可;-->

按钮执行JS示例代码

<button onclick="zhixing()" >执行</button>
<!-- //写一个按钮,定义点击执行事件; -->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- //在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接; -->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.easeIm.logout(function(succ, data) {
  alert(succ ? "退出成功" : "退出失败\n" + JSON.stringify(data));
});

}
</script>
<!-- //执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可; -->

login 登录 APP开发接入 环信 IM即时通讯SDK

用做网页的技术做APP
一门提供标准化的jsbridge-mini.js库,您只需要在页面引用执行JS即可实现各种原生APP、原生PC的功能能力。

==================APP端==================
【APP端】(安卓版&苹果版)目前提供200+原生功能,2000+JS映射接口,用做网站的技术即可实现各种原生APP能力、APP demo地址https://www.yimenapp.com/doc/demo.cshtml下载教程:
♦ JS-SDK 引用方式:
♦ 普通网页 script 方式加载:下载最新版,请在页面上调用 jsBridge 接口之前引用 jsbridge-mini.js 库;
♦ js module 方式引用:npm install ym-jsbridge 具体请参考 npm package
一门APP开发平台通用JS

login 登录 APP开发接入 环信 IM即时通讯SDK

核心代码示例,详情参阅demo

//token 和 password 任选其一,优先使用 token
jsBridge.easeIm.login({
  //字符串,用户ID
  //请使用 用户体系集成 RESTful API 管理用户
  //或环信控制台 用户管理
  username: $("#login_username").val(),
  //字符串,用户鉴权token
  token: $("#login_token").val(),
  //字符串,密码
  password: $("#login_password").val()
}, function(succ, data) {
  alert(succ ? "登录成功" : "登录失败\n" + JSON.stringify(data));
});

A标签执行JS示例代码

<a href="javascript:void(0)" onclick="zhixing()">执行</a> 
<!-- 写入一个A标签href值为"javascript:void(0)",定义点击事件onclick;-->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- 在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接;-->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
//token 和 password 任选其一,优先使用 token
jsBridge.easeIm.login({
  //字符串,用户ID
  //请使用 用户体系集成 RESTful API 管理用户
  //或环信控制台 用户管理
  username: $("#login_username").val(),
  //字符串,用户鉴权token
  token: $("#login_token").val(),
  //字符串,密码
  password: $("#login_password").val()
}, function(succ, data) {
  alert(succ ? "登录成功" : "登录失败\n" + JSON.stringify(data));
});

}
</script>
<!--执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可;-->

按钮执行JS示例代码

<button onclick="zhixing()" >执行</button>
<!-- //写一个按钮,定义点击执行事件; -->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- //在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接; -->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
//token 和 password 任选其一,优先使用 token
jsBridge.easeIm.login({
  //字符串,用户ID
  //请使用 用户体系集成 RESTful API 管理用户
  //或环信控制台 用户管理
  username: $("#login_username").val(),
  //字符串,用户鉴权token
  token: $("#login_token").val(),
  //字符串,密码
  password: $("#login_password").val()
}, function(succ, data) {
  alert(succ ? "登录成功" : "登录失败\n" + JSON.stringify(data));
});

}
</script>
<!-- //执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可; -->

init 初始化 APP开发接入环信 IM即时通讯SDK教程

用做网页的技术做APP
一门提供标准化的jsbridge-mini.js库,您只需要在页面引用执行JS即可实现各种原生APP、原生PC的功能能力。

==================APP端==================
【APP端】(安卓版&苹果版)目前提供200+原生功能,2000+JS映射接口,用做网站的技术即可实现各种原生APP能力、APP demo地址https://www.yimenapp.com/doc/demo.cshtml下载教程:
♦ JS-SDK 引用方式:
♦ 普通网页 script 方式加载:下载最新版,请在页面上调用 jsBridge 接口之前引用 jsbridge-mini.js 库;
♦ js module 方式引用:npm install ym-jsbridge 具体请参考 npm package
一门APP开发平台通用JS

环信 IM即时通讯

核心代码示例,详情参阅demo

jsBridge.easeIm.init({
  //字符串,环信平台上创建的应用 AppKey
  appKey: $("#init_appKey").val(),
  //布尔,如果之前处于登录状态,初始化成功后是否自动登录
  autoLogin: JSON.parse($("#init_autoLogin").val()),
  //布尔,是否对发送消息进行加密
  useEncryption: JSON.parse($("#init_useEncryption").val()),
  //布尔,是否发送消息已读回执
  requireReadAck: JSON.parse($("#init_requireReadAck").val()),
  //布尔,是否发送消息已送达回执
  requireDeliveryAck: JSON.parse($("#init_requireDeliveryAck").val()),
  //布尔,是否开启调试模式
  //调试模式能输出更多的日志信息,但会影响运行性能
  debug: JSON.parse($("#init_debug").val())
}, function(succ, data) {
  alert(succ ? "成功" : "失败\n" + JSON.stringify(data));
});

A标签执行JS示例代码

<a href="javascript:void(0)" onclick="zhixing()">执行</a> 
<!-- 写入一个A标签href值为"javascript:void(0)",定义点击事件onclick;-->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- 在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接;-->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.easeIm.init({
  //字符串,环信平台上创建的应用 AppKey
  appKey: $("#init_appKey").val(),
  //布尔,如果之前处于登录状态,初始化成功后是否自动登录
  autoLogin: JSON.parse($("#init_autoLogin").val()),
  //布尔,是否对发送消息进行加密
  useEncryption: JSON.parse($("#init_useEncryption").val()),
  //布尔,是否发送消息已读回执
  requireReadAck: JSON.parse($("#init_requireReadAck").val()),
  //布尔,是否发送消息已送达回执
  requireDeliveryAck: JSON.parse($("#init_requireDeliveryAck").val()),
  //布尔,是否开启调试模式
  //调试模式能输出更多的日志信息,但会影响运行性能
  debug: JSON.parse($("#init_debug").val())
}, function(succ, data) {
  alert(succ ? "成功" : "失败\n" + JSON.stringify(data));
});

}
</script>
<!--执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可;-->

按钮执行JS示例代码

<button onclick="zhixing()" >执行</button>
<!-- //写一个按钮,定义点击执行事件; -->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- //在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接; -->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.easeIm.init({
  //字符串,环信平台上创建的应用 AppKey
  appKey: $("#init_appKey").val(),
  //布尔,如果之前处于登录状态,初始化成功后是否自动登录
  autoLogin: JSON.parse($("#init_autoLogin").val()),
  //布尔,是否对发送消息进行加密
  useEncryption: JSON.parse($("#init_useEncryption").val()),
  //布尔,是否发送消息已读回执
  requireReadAck: JSON.parse($("#init_requireReadAck").val()),
  //布尔,是否发送消息已送达回执
  requireDeliveryAck: JSON.parse($("#init_requireDeliveryAck").val()),
  //布尔,是否开启调试模式
  //调试模式能输出更多的日志信息,但会影响运行性能
  debug: JSON.parse($("#init_debug").val())
}, function(succ, data) {
  alert(succ ? "成功" : "失败\n" + JSON.stringify(data));
});

}
</script>
<!-- //执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可; -->