Launch Week Day 5: Introducing Reachability for PHP.Learn More
Socket
Book a DemoSign in
Socket

express-freemarker

Package Overview
Dependencies
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

express-freemarker - npm Package Compare versions

Comparing version
0.1.0
to
0.1.1
+19
-10
index.js

@@ -30,20 +30,29 @@ // libs/fmpp/bin/fmpp test/template/index.ftl -D "tdd(../data.json)" -o test/index.html

// args = [filename, "-D", "tdd(" + path.join( basedir, dataname) + ")", "-o", path.join(basedir, tname)];
var args = [filename, "-D", data, "-o", tname ];
var args = [filename, "-D", data, "-o", tname ];
var fmpp = spawn(path2fmpp, args, function(err, content){
console.log( content )
if(err) throw err;
})
// fmpp.stdout.on('data', function (data) {
// console.log('stdout: ' + data);
// });
var errorMsg = "";
fmpp.stderr.on('data', function (data) {
callback(data)
// console.log(data.toString(), 'error')
// callback(data.toString())
});
// @TODO FIX.
fmpp.stdout.on('data', function (data) {
errorMsg += data.toString();
// callback(data.toString())
});
fmpp.on('close', function (code) {
if(code !== 0) return;
fs.readFile(tname, 'utf8', function(err, content){
callback(err, content);
fs.unlink(tname);
if(~errorMsg.indexOf(">>> ABORTED! <<<") || code !== 0){
var isError = true;
callback(errorMsg || "uncatched freemarker parse Error occurs in " + filename)
}
fs.exists(tname, function(flag){
if(isError) return fs.unlink(tname, function(){});
fs.readFile(tname, 'utf8', function(err, content){
callback(err, content);
fs.unlink(tname, function(){});
})
})

@@ -50,0 +59,0 @@ });

{
"name": "express-freemarker",
"version": "0.1.0",
"version": "0.1.1",
"description": "",

@@ -5,0 +5,0 @@ "main": "index.js",

@@ -8,3 +8,2 @@ var fmpp = require("../");

render( path.join(__dirname, 'template/index.ftl'), {
name: 'zhenghaibo',
flowers: [

@@ -15,3 +14,4 @@ ["zhenghaibo", 'hello' ,100],

}, function(err, content){
console.log(content)
if(err) return console.log(err)
else console.log(content)
})
${name}
${name!}

@@ -4,0 +4,0 @@ <table border=1>

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script type='text/md' id='md' >
# Http API接口文档(开放官网)
##1.1 接口说明
### 1.1.1 API调用说明
本文档中所有调用云信服务端接口的请求都需要按此规则校验。
### 1.1.2 API checksum校验
> 以下参数需要放在Http Request Header中
| 参数 | 参数说明 |
| :-------- | :--------|
| AppKey | 开发者平台分配的appkey |
| Nonce | 随机数(最大长度128个字符)|
| CurTime | 时间戳,从1970年1月1日0点0 分0 秒开始到现在的秒数(String) |
| CheckSum | SHA1(AppSecret + Nonce + CurTime),三个参数拼接的字符串,进行SHA1哈希计算,转化成16进制字符(String,小写) |
> CheckSum检验失败时会返回402错误码具体参看错误码表
### 1.1.3 接口说明
1. 所有接口都只支持POST请求
2. 所有接口请求Content-Type类型为:application/x-www-form-urlencoded;charset=utf-8
3. 所有接口返回类型为JSON,同时进行UTF-8编码
##1.2 用户服务
###1.2.1 账号调用说明
1. App:第三方app客户端;
2. AppServer:第三方app服务端;
3. 云信webserver:云信后台web服务;
4. 云信imserver:SDK直连的IM服务;
![Alt text](./1432564227796.png)
>注:
>1.客户端通过云信SDK连接服务器时,需要保证账号已经注册,如果云信webserver生成token,确保客户端从服务器已经取得token;
>2.客户端在获取token之后,可以直连云信服务器,进行校验;
>3.token:用户账号的密码
>创建账号如果第三方APP自己指定,可以为加密后的密码,也可以为第三方为账号生成的一个加密的密钥,此密钥在创建账号时指定,在app直连云信imserver时带上即可。此密钥在第三方被修改时,请同步在云信webserver进行修改,以免引起用户登陆失败。
创建账号如果不指定此密钥,则云信会为账号生成一个加密的密钥,第三方需要保存此秘钥,app在登录时需要进行认证,并且在云信imserver进行连接时,需要带上此秘钥。此秘钥第三方也可以进行修改,同时也需要在修改时同步到云信webserver中。(此密钥原则上没有过期时间,如果发现密钥丢失可以使用接口刷新密钥)。
###1.2.2 创建账号
<table>
<thead>
<tr>
<th>请求说明</th>
<th>POST http://api.netease.im/nimserver/user/create.action HTTP/1.1<br> <code>Content-Type:application/x-www-form-urlencoded;charset=utf-8</code></th>
</tr>
</thead>
<tbody>
<tr>
<td>接口描述</td>
<td>1.第三方账号导入到云信平台;<br> 2.注意accid,name长度以及考虑管理秘钥token </td>
</tr>
<tr>
<td>参数说明</td>
<td> <table>
<thead>
<tr> <th>参数</th><th>类型</th><th>必须</th><th>说明</th></tr>
<tr> <td>accid</td><td>String</td><td>是</td><td>
用户帐号,最大长度32字节,必须保证一个<br>
APP内唯一(只允许字母、数字、半角下划线_、<br>
@、半角点以及半角-组成,不区分大小写,<br>
会统一小写处理)</td></tr>
<tr> <td>name</td><td>String</td><td>是</td><td>
用户昵称,最大长度64字节,用来PUSH推送<br>
时显示的昵称</td></tr>
<tr> <td>props</td><td>String</td><td>否</td><td>
json属性,第三方可选填,最大长度1024字节</td></tr>
<tr> <td>icon</td><td>String</td><td>否</td><td>
用户头像URL,第三方可选填,最大长度1024</td></tr>
<tr> <td>token</td><td>String</td><td>否</td><td>
用户可以指定登录token值,最大长度128字节,<br>
并更新,如果未指定,会自动生成token,并在<br>
创建成功后返回
</td></tr>
</thead>
</table>
</td>
</tr>
<tr>
<td>返回说明</td>
<td>http 响应:json<br>
<code>
"Content-Type": "application/json; charset=utf-8"
{"code":"200","info":
{"token":"xx","accid":"xx","name":"xx"} }
</code>
</br>
参考code状态表
</td> </tr> </tbody>
</table>
###1.2.3 账号更新
<table>
<thead>
<tr>
<th>请求说明</th>
<th>POST http://api.netease.im/nimserver/user/update.action HTTP/1.1 <br>
<code>Content-Type:application/x-www-form-urlencoded;charset=utf-8</code></th>
</tr>
</thead>
<tbody>
<tr>
<td>接口描述</td>
<td>账号基本信息更新</td>
</tr>
<tr>
<td>参数说明</td>
<td> <table>
<thead>
<tr> <th>参数</th><th>类型</th><th>必须</th><th>说明</th></tr>
<tr> <td>accid</td><td>String</td><td>是</td><td>
用户帐号,最大长度32字节,必须保证一个<br>
APP内唯一</td></tr>
<tr> <td>name</td><td>String</td><td>是</td><td>
用户昵称,最大长度64字节,用来PUSH推送<br>
时显示的昵称</td></tr>
<tr> <td>props</td><td>String</td><td>否</td><td>
json属性,第三方可选填,最大长度1024字节</td></tr>
<tr> <td>icon</td><td>String</td><td>否</td><td>
用户头像URL,第三方可选填,最大长度1024</td></tr>
<tr> <td>token</td><td>String</td><td>否</td><td>
用户可以指定登录token值,最大长度128字节</td></tr>
</thead>
</table>
</td>
</tr>
<tr>
<td>返回说明</td>
<td>http 响应:json<br>
<code>
"Content-Type": "application/json; charset=utf-8"
{"code":"200" }
</code>
</br>
参考code状态表
</td> </tr> </tbody>
</table>
###1.2.4 检测用户在线状态
<table>
<thead>
<tr>
<th>请求说明</th>
<th>POST http://api.netease.im/nimserver/user/checkOnline.action HTTP/1.1 <br>
<code>Content-Type:application/x-www-form-urlencoded;charset=utf-8</code></th>
</tr>
</thead>
<tbody>
<tr>
<td>接口描述</td>
<td>1.提供给第三方检测用户在线状态<br>
2.此接口设有频率限制,半小时内调用超过500次会被屏蔽一段时间,同时返回403错误码。</td>
</tr>
<tr>
<td>参数说明</td>
<td> <table>
<thead>
<tr> <th>参数</th><th>类型</th><th>必须</th><th>说明</th></tr>
<tr> <td>accid</td><td>String</td><td>是</td><td>
用户帐号,最大长度32字节,必须保证一个<br>
APP内唯一</td></tr>
</thead>
</table>
</td>
</tr>
<tr>
<td>返回说明</td>
<td>http 响应:json<br>
<code>
"Content-Type": "application/json; charset=utf-8"<br>
{"code":"200" , "status":"(1或者0,1表示在线,0表示离线)"}
</code>
</br>
参考code状态表
</td> </tr> </tbody>
</table>
###1.2.5 更新并获取新token
<table>
<thead>
<tr>
<th>请求说明</th>
<th>POST http://api.netease.im/nimserver/user/refreshToken.action HTTP/1.1 <br>
<code>Content-Type:application/x-www-form-urlencoded;charset=utf-8</code></th>
</tr>
</thead>
<tbody>
<tr>
<td>接口描述</td>
<td>1.webserver更新用户的token,同时返回新的token<br>
2.一般用于用户修改密码,找回密码或者第三方有需求获取新的token。</td>
</tr>
<tr>
<td>参数说明</td>
<td> <table>
<thead>
<tr> <th>参数</th><th>类型</th><th>必须</th><th>说明</th></tr>
<tr> <td>accid</td><td>String</td><td>是</td><td>
用户帐号,最大长度32字节,必须保证一个<br>
APP内唯一</td></tr>
</thead>
</table>
</td>
</tr>
<tr>
<td>返回说明</td>
<td>http 响应:json<br>
<code>
"Content-Type": "application/json; charset=utf-8"<br>
{"code":"200" , "info":{"token":"xxx","accid":"xx" } }
</code>
</br>
参考code状态表
</td> </tr> </tbody>
</table>
###1.2.6 封禁用户
<table>
<thead>
<tr>
<th>请求说明</th>
<th>POST http://api.netease.im/nimserver/user/block.action HTTP/1.1 <br>
<code>Content-Type:application/x-www-form-urlencoded;charset=utf-8</code></th>
</tr>
</thead>
<tbody>
<tr>
<td>接口描述</td>
<td>1.第三方禁用某个用户的IM功能<br>
2.封禁用户后,此用户将不能登陆云信imserver</td>
</tr>
<tr>
<td>参数说明</td>
<td> <table>
<thead>
<tr> <th>参数</th><th>类型</th><th>必须</th><th>说明</th></tr>
<tr> <td>accid</td><td>String</td><td>是</td><td>
用户帐号,最大长度32字节,必须保证一个<br>
APP内唯一</td></tr>
</thead>
</table>
</td>
</tr>
<tr>
<td>返回说明</td>
<td>http 响应:json<br>
<code>
"Content-Type": "application/json; charset=utf-8"<br>
{"code":"200" , }
</code>
</br>
参考code状态表
</td> </tr> </tbody>
</table>
###1.2.7 解禁用户
<table>
<thead>
<tr>
<th>请求说明</th>
<th>POST http://api.netease.im/nimserver/user/unblock.action HTTP/1.1 <br>
<code>Content-Type:application/x-www-form-urlencoded;charset=utf-8</code></th>
</tr>
</thead>
<tbody>
<tr>
<td>接口描述</td>
<td>解禁被封禁的用户</td>
</tr>
<tr>
<td>参数说明</td>
<td> <table>
<thead>
<tr> <th>参数</th><th>类型</th><th>必须</th><th>说明</th></tr>
<tr> <td>accid</td><td>String</td><td>是</td><td>
用户帐号,最大长度32字节,必须保证一个<br>
APP内唯一</td></tr>
</thead>
</table>
</td>
</tr>
<tr>
<td>返回说明</td>
<td>http 响应:json<br>
<code>
"Content-Type": "application/json; charset=utf-8"<br>
{"code":"200" , }
</code>
</br>
参考code状态表
</td> </tr> </tbody>
</table>
## 1.3消息服务
###1.3.1 发送透传消息
<table>
<thead>
<tr>
<th>请求说明</th>
<th>POST http://api.netease.im/nimserver/msg/sendAttachMsg.action HTTP/1.1 <br>
<code>Content-Type:application/x-www-form-urlencoded;charset=utf-8</code></th>
</tr>
</thead>
<tbody>
<tr>
<td>接口描述</td>
<td>1.透传消息区别于普通消息,应用接收到直接交给上层处理,客户端可不做展示。<br>
2.目前支持两种类型:点对点类型和群类型(仅限高级群),根据msgType有所区别。(应用场景:如某个用户给另一个用户发送好友请求信息等,具体attach为请求消息体,第三方可以自行扩展,建议是json格式)
</td>
</tr>
<tr>
<td>参数说明</td>
<td> <table>
<thead>
<tr> <th>参数</th><th>类型</th><th>必须</th><th>说明</th></tr>
<tr> <td>from</td><td>String</td><td>是</td><td>
发送者accid,用户账号,最大32字节,APP内唯一</td></tr>
<tr> <td>msgtype</td><td>String</td><td>是</td><td>
0:透传点对点消息,1:透传群消息,其他返回414</td></tr>
<tr> <td>to</td><td>String</td><td>是</td><td>
msgtype==0是表示accid,msgtype==1表示tid</td></tr>
<tr> <td>attach</td><td>String</td><td>是</td><td>
要透传的消息,第三方组装的字符串,建议是JSON串,最大长度1024字节
</td></tr>
<tr> <td>pushcontent</td><td>String</td><td>否</td><td>
ios 推送内容,第三方自己组装的推送内容(pushcontent + payload不能超过200字节)</td></tr>
<tr> <td>payload</td><td>String</td><td>否</td><td>
ios 推送对应的payload,必须是JSON(pushcontent + payload不能超过200字节)</td></tr>
</thead>
</table>
</td>
</tr>
<tr>
<td>返回说明</td>
<td>http 响应:json<br>
<code>
"Content-Type": "application/json; charset=utf-8"<br>
{"code":"200" , }
</code>
</br>
参考code状态表
</td> </tr> </tbody>
</table>
##1.4高级群相关操作
>注意:所有群操作一个ip一分钟操作次数超过600次,会返回416错误码。
###1.4.1 创建高级群
<table>
<thead>
<tr>
<th>请求说明</th>
<th>POST http://api.netease.im/nimserver/team/create.action HTTP/1.1 <br>
<code>Content-Type:application/x-www-form-urlencoded;charset=utf-8</code></th>
</tr>
</thead>
<tbody>
<tr>
<td>接口描述</td>
<td>1.创建高级群,以邀请的方式发送给用户;<br>
2.custom字段是给第三方的扩展字段,第三方可以基于此字段扩展高级群的功能,构建自己需要的群;<br>
3.建群成功会返回tid,需要保存,以便于加人与踢人等后续操作;<br>
4.每个用户建群有数量限制,默认50。
</td>
</tr>
<tr>
<td>参数说明</td>
<td> <table>
<thead>
<tr> <th>参数</th><th>类型</th><th>必须</th><th>说明</th></tr>
<tr> <td>tname</td><td>String</td><td>是</td><td>
群名称,最大长度64字节</td></tr>
<tr> <td>owner</td><td>String</td><td>是</td><td>
群主用户账号,最大长度32字节</td></tr>
<tr> <td>members</td><td>String</td><td>是</td><td>
["aaa","bbb"](JsonArray对应的accid,如果解析出错会报414),长度最大1024字节(群成员最多50个)</td></tr>
<tr> <td>announcement</td><td>String</td><td>否</td><td>
群公告,最大长度1024字节</td></tr>
<tr> <td>intro</td><td>String</td><td>否</td><td>
群描述,最大长度512字节</td></tr>
<tr> <td>msg</td><td>String</td><td>是</td><td>
邀请发送的文字,最大长度150字节</td></tr>
<tr> <td>magree</td><td>String</td><td>是</td><td>
管理后台建群时,0不需要被邀请人同意加入群,1需要被邀请人同意才可以加入群。其它会返回414。</td></tr>
<tr> <td>joinmode</td><td>String</td><td>是</td><td>
群建好后,sdk操作时,0不用验证,1需要验证,2不允许任何人加入。其它返回414
</td></tr>
<tr> <td>custom</td><td>String</td><td>否</td><td>
自定义高级群扩展属性,第三方可以跟据此属性自定义扩展自己的群属性。(建议为json),最大长度1024字节.</td></tr>
</thead>
</table>
</td>
</tr>
<tr>
<td>返回说明</td>
<td>http 响应:json<br>
<code>
"Content-Type": "application/json; charset=utf-8"<br>
{"code":"200" , "tid":"11001"}
</code>
</br>
参考code状态表
</td> </tr> </tbody>
</table>
###1.4.2 高级群邀请人
<table>
<thead>
<tr>
<th>请求说明</th>
<th>POST http://api.netease.im/nimserver/team/add.action HTTP/1.1 <br>
<code>Content-Type:application/x-www-form-urlencoded;charset=utf-8</code></th>
</tr>
</thead>
<tbody>
<tr>
<td>接口描述</td>
<td>1. 可以批量邀请,邀请时需指定群主;<br>
2. 当群成员达到上限(默认为50)时,再邀请某人入群返回失败;<br>
3. 当群成员达到上限时,被邀请人“接受邀请”的操作也将返回失败。</td>
</tr>
<tr>
<td>参数说明</td>
<td> <table>
<thead>
<tr> <th>参数</th><th>类型</th><th>必须</th><th>说明</th></tr>
<tr> <td>tid</td><td>String</td><td>是</td><td>
云信服务器产生,群唯一标识,创建群时会返回,最大长度128字节
</td></tr>
<tr> <td>owner</td><td>String</td><td>是</td><td>
群主用户账号,最大长度32字节</td></tr>
<tr> <td>members</td><td>String</td><td>是</td><td>
["aaa","bbb"](JsonArray对应的accid,如果解析出错会报414),长度最大1024字节(群成员最多50个)</td></tr>
<tr> <td>magree</td><td>String</td><td>是</td><td>
管理后台建群时,0不需要被邀请人同意加入群,1需要被邀请人同意才可以加入群。其它会返回414。</td></tr>
<tr> <td>msg</td><td>String</td><td>是</td><td>
邀请发送的文字,最大长度150字节</td></tr>
</thead>
</table>
</td> </tr>
<tr><td>返回说明</td><td>http 响应:json<br>
<code>
"Content-Type": "application/json; charset=utf-8"<br>
{"code":"200" }
</code>
</br>
参考code状态表
</td> </tr> </tbody>
</table>
###1.4.3 高级群踢人
<table>
<thead>
<tr>
<th>请求说明</th>
<th>POST http://api.netease.im/nimserver/team/kick.action HTTP/1.1 <br>
<code>Content-Type:application/x-www-form-urlencoded;charset=utf-8</code></th>
</tr>
</thead>
<tbody>
<tr>
<td>接口描述</td>
<td>1. 高级群踢人,需要提供群主accid以及要踢除人得accid。</td>
</tr>
<tr>
<td>参数说明</td>
<td> <table>
<thead>
<tr> <th>参数</th><th>类型</th><th>必须</th><th>说明</th></tr>
<tr> <td>tid</td><td>String</td><td>是</td><td>
云信服务器产生,群唯一标识,创建群时会返回,最大长度128字节
</td></tr>
<tr> <td>owner</td><td>String</td><td>是</td><td>
群主用户账号,最大长度32字节</td></tr>
<tr> <td>member</td><td>String</td><td>是</td><td>被移除人得accid,用户账号,最大长度字节</td></tr>
</thead>
</table>
</td> </tr>
<tr><td>返回说明</td><td>http 响应:json<br>
<code>
"Content-Type": "application/json; charset=utf-8"<br>
{"code":"200" }
</code>
</br>
参考code状态表
</td> </tr> </tbody>
</table>
###1.4.4 删除高级群
<table>
<thead>
<tr>
<th>请求说明</th>
<th>POST http://api.netease.im/nimserver/team/remove.action HTTP/1.1 <br>
<code>Content-Type:application/x-www-form-urlencoded;charset=utf-8</code></th>
</tr>
</thead>
<tbody>
<tr>
<td>接口描述</td>
<td>删除整个群,会解散该群,需要提供群主accid,谨慎操作!</td>
</tr>
<tr>
<td>参数说明</td>
<td> <table>
<thead>
<tr> <th>参数</th><th>类型</th><th>必须</th><th>说明</th></tr>
<tr> <td>tid</td><td>String</td><td>是</td><td>
云信服务器产生,群唯一标识,创建群时会返回,最大长度128字节
</td></tr>
<tr> <td>owner</td><td>String</td><td>是</td><td>
群主用户账号,最大长度32字节</td></tr>
</thead>
</table>
</td> </tr>
<tr><td>返回说明</td><td>http 响应:json<br>
<code>
"Content-Type": "application/json; charset=utf-8"<br>
{"code":"200" }
</code>
</br>
参考code状态表
</td> </tr> </tbody>
</table>
###1.4.5 高级群信息修改
<table>
<thead>
<tr>
<th>请求说明</th>
<th>POST http://api.netease.im/nimserver/team/update.action HTTP/1.1 <br>
<code>Content-Type:application/x-www-form-urlencoded;charset=utf-8</code></th>
</tr>
</thead>
<tbody>
<tr>
<td>接口描述</td>
<td>高级群基本信息修改</td>
</tr>
<tr>
<td>参数说明</td>
<td> <table>
<thead>
<tr> <th>参数</th><th>类型</th><th>必须</th><th>说明</th></tr>
<tr> <td>tid</td><td>String</td><td>是</td><td>
云信服务器产生,群唯一标识,创建群时会返回,最大长度128字节
</td></tr>
<tr> <td>tname</td><td>String</td><td>是</td><td>
群名称,最大长度64字节</td></tr>
<tr> <td>owner</td><td>String</td><td>是</td><td>
群主用户账号,最大长度32字节</td></tr>
<tr> <td>announcement</td><td>String</td><td>否</td><td>
群公告,最大长度1024字节</td></tr>
<tr> <td>intro</td><td>String</td><td>否</td><td>
群描述,最大长度512字节</td></tr>
<tr> <td>joinmode</td><td>String</td><td>是</td><td>
群建好后,sdk操作时,0不用验证,1需要验证,2不允许任何人加入。其它返回414
</td></tr>
<tr> <td>custom</td><td>String</td><td>否</td><td>
自定义高级群扩展属性,第三方可以跟据此属性自定义扩展自己的群属性。(建议为json),最大长度1024字节.</td></tr>
</thead>
</table>
</td> </tr>
<tr><td>返回说明</td><td>http 响应:json<br>
<code>
"Content-Type": "application/json; charset=utf-8"<br>
{"code":"200" }
</code>
</br>
参考code状态表
</td> </tr> </tbody>
</table>
###1.4.6 高级群信息与成员列表查询
<table>
<thead>
<tr>
<th>请求说明</th>
<th>POST http://api.netease.im/nimserver/team/query.action HTTP/1.1 <br>
<code>Content-Type:application/x-www-form-urlencoded;charset=utf-8</code></th>
</tr>
</thead>
<tbody>
<tr>
<td>接口描述</td>
<td>1.高级群信息与成员列表查询,一次最多查询30个群相关的信息,跟据ope参数来控制是否带上群成员列表。<br>
2.查询群成员会稍微慢一些,所以如果不需要群成员列表可以只查群信息。<br>
3.此接口受频率控制,某个应用一分钟最多查询30次,超过会返回403,并且被屏蔽一段时间.</td>
</tr>
<tr>
<td>参数说明</td>
<td> <table>
<thead>
<tr> <th>参数</th><th>类型</th><th>必须</th><th>说明</th></tr>
<tr> <td>tids</td><td>String</td><td>是</td><td>
群tid列表,如["3083","3084"]
</td></tr>
<tr> <td>ope</td><td>String</td><td>是</td><td>
1表示带上群成员列表,0表示不带群成员列表,只返回群信息
</td></tr></thead>
</table>
</td> </tr>
<tr><td>返回说明</td><td>http 响应:json<br>
<code>//查询不带群成员的群列表信息
{
"code":200,
"tinfos":
[
{"tname":"aa","announcement":"aa","owner":"v4","maxusers":50,
"joinmode":1,"tid":3083,"intro":"test","size":3, "custom":""},
{"tname":"bb","announcement":"bb","owner":"v4","maxusers":50,
"joinmode":1,"tid":3084,"intro":"test","size":3, "custom":""}
]
}<br>
//查询带群成员的群列表信息
{
"code":200,
"tinfos":
[
{"tname":"aa","announcement":"aa","owner":"v4","maxusers":50,
"joinmode":1,"tid":3083,"intro":"test","size":3, "custom":"", "members":["v1","v2"]},
{"tname":"bb","announcement":"bb","owner":"v4","maxusers":50,
"joinmode":1,"tid":3084,"intro":"test","size":3, "custom":"", "members":["v1","v2"]}
]
}</code>
</br>
参考code状态表
</td> </tr> </tbody>
</table>
###1.4.7 高级群转换群主
<table>
<thead>
<tr>
<th>请求说明</th>
<th>POST http://api.netease.im/nimserver/team/changeOwner.action HTTP/1.1 <br>
<code>Content-Type:application/x-www-form-urlencoded;charset=utf-8</code></th>
</tr>
</thead>
<tbody>
<tr>
<td>接口描述</td>
<td>1. 转换群主身份。<br>
2. 群主可以选择离开此群,还是留下来成为普通成员!
</td>
</tr>
<tr>
<td>参数说明</td>
<td> <table>
<thead>
<tr> <th>参数</th><th>类型</th><th>必须</th><th>说明</th></tr>
<tr> <td>tid</td><td>String</td><td>是</td><td>
云信服务器产生,群唯一标识,创建群时会返回,最大长度128字节
</td></tr>
<tr> <td>owner</td><td>String</td><td>是</td><td>
群主用户账号,最大长度32字节</td></tr>
<tr> <td>newowner</td><td>String</td><td>是</td><td>
新群主账号,最大长度32字节</td></tr>
<tr> <td>leave</td><td>String</td><td>是</td><td>
1:群主解除群主后离开群,2:群主解除群主后成为普通成员。其它414
</td></tr>
</thead>
</table>
</td> </tr>
<tr><td>返回说明</td><td>http 响应:json<br>
<code>
"Content-Type": "application/json; charset=utf-8"<br>
{"code":"200" }
</code>
</br>
参考code状态表
</td> </tr> </tbody>
</table>
###1.4.8 高级群增加管理员
<table>
<thead>
<tr>
<th>请求说明</th>
<th>POST http://api.netease.im/nimserver/team/addManager.action HTTP/1.1 <br>
<code>Content-Type:application/x-www-form-urlencoded;charset=utf-8</code></th>
</tr>
</thead>
<tbody>
<tr>
<td>接口描述</td>
<td>提升普通成员为群管理员,可以批量,但是最多不超过10个人。
</td>
</tr>
<tr>
<td>参数说明</td>
<td> <table>
<thead>
<tr> <th>参数</th><th>类型</th><th>必须</th><th>说明</th></tr>
<tr> <td>tid</td><td>String</td><td>是</td><td>
云信服务器产生,群唯一标识,创建群时会返回,最大长度128字节
</td></tr>
<tr> <td>owner</td><td>String</td><td>是</td><td>
群主用户账号,最大长度32字节</td></tr>
<tr> <td>members</td><td>String</td><td>是</td><td>
["aaa","bbb"](JsonArray对应的accid,如果解析出错会报414),长度最大1024字节(群成员最多10个)</td></tr>
</thead>
</table>
</td> </tr>
<tr><td>返回说明</td><td>http 响应:json<br>
<code>
"Content-Type": "application/json; charset=utf-8"<br>
{"code":"200" }
</code>
</br>
参考code状态表
</td> </tr> </tbody>
</table>
###1.4.9 高级群解除管理员
<table>
<thead>
<tr>
<th>请求说明</th>
<th>POST http://api.netease.im/nimserver/team/removeManager.action HTTP/1.1 <br>
<code>Content-Type:application/x-www-form-urlencoded;charset=utf-8</code></th>
</tr>
</thead>
<tbody>
<tr>
<td>接口描述</td>
<td>解除管理员身份,可以批量,但是最多不超过10个人
</td>
</tr>
<tr>
<td>参数说明</td>
<td> <table>
<thead>
<tr> <th>参数</th><th>类型</th><th>必须</th><th>说明</th></tr>
<tr> <td>tid</td><td>String</td><td>是</td><td>
云信服务器产生,群唯一标识,创建群时会返回,最大长度128字节
</td></tr>
<tr> <td>owner</td><td>String</td><td>是</td><td>
群主用户账号,最大长度32字节</td></tr>
<tr> <td>members</td><td>String</td><td>是</td><td>
["aaa","bbb"](JsonArray对应的accid,如果解析出错会报414),长度最大1024字节(群成员最多10个)</td></tr>
</thead>
</table>
</td> </tr>
<tr><td>返回说明</td><td>http 响应:json<br>
<code>
"Content-Type": "application/json; charset=utf-8"<br>
{"code":"200" }
</code>
</br>
参考code状态表
</td> </tr> </tbody>
</table>
###1.4.10 高级群获取某用户所加入的群信息
<table>
<thead>
<tr>
<th>请求说明</th>
<th>POST http://api.netease.im/nimserver/team/joinTeams.action HTTP/1.1 <br>
<code>Content-Type:application/x-www-form-urlencoded;charset=utf-8</code></th>
</tr>
</thead>
<tbody>
<tr>
<td>接口描述</td>
<td>获取某个用户所加入高级群的群信息
</td>
</tr>
<tr>
<td>参数说明</td>
<td> <table>
<thead>
<tr> <th>参数</th><th>类型</th><th>必须</th><th>说明</th></tr>
<tr> <td>accid</td><td>String</td><td>是</td><td>
要查询用户的accid
</td></tr></thead>
</table>
</td> </tr>
<tr><td>返回说明</td><td>http 响应:json<br>
<code>
"Content-Type": "application/json; charset=utf-8"<br>
{"code":"200" ,
"count":2,
"infos":
[
{"owner":"t2","tname":"test1","maxusers":50,"tid":3620,"size":3, "custom":""},
{"owner":"t1","tname":"test2","maxusers":50,"tid":3622,"size":4, "custom":""}
]}
}</code>
</br>
参考code状态表
</td> </tr> </tbody>
</table>
###1.4.11 高级群修改群昵称
<table>
<thead>
<tr>
<th>请求说明</th>
<th>POST http://api.netease.im/nimserver/team/updateTeamNick.action HTTP/1.1 <br>
<code>Content-Type:application/x-www-form-urlencoded;charset=utf-8</code></th>
</tr>
</thead>
<tbody>
<tr>
<td>接口描述</td>
<td>修改制定账号在群内的昵称
</td>
</tr>
<tr>
<td>参数说明</td>
<td> <table>
<thead>
<tr> <th>参数</th><th>类型</th><th>必须</th><th>说明</th></tr>
<tr> <td>tid</td><td>String</td><td>是</td><td>
云信服务器产生,群唯一标识,创建群时会返回</td></tr>
<tr> <td>owner</td><td>String</td><td>是</td><td>
群主accid
</td></tr>
<tr> <td>accid</td><td>String</td><td>是</td><td>
要修改群昵称对应群成员的accid
</td></tr>
<tr> <td>nick</td><td>String</td><td>是</td><td>
accid对应的群昵称,最大长度32字节。
</td></tr>
</thead>
</table>
</td> </tr>
<tr><td>返回说明</td><td>http 响应:json<br>
<code>
"Content-Type": "application/json; charset=utf-8"<br>
{"code":"200"}</code>
</br>
参考code状态表
</td> </tr> </tbody>
</table>
## 1.5状态码
| code | 详细描述 |
| :---- | :--------|
| 200 | 操作成功 |
| 201 | 客户端版本不对,需升级sdk |
| 302 | 用户名或密码错误 |
| 402 | Checksum校验失败 |
| 403 | 非法操作或没有权限 |
| 404 | 对象不存在 |
| 405 | 参数长度过长 |
| 406 | 对象只读 |
| 408 | 客户端请求超时 |
| 414 | 参数错误 |
| 415 | 客户端网络问题 |
| 416 | 频率控制 |
| 422 | 账号被禁用 |
| 451 | 账号已经存在 |
| 452 | 账号不存在 |
| 453 | 证书已存在 |
| 461 | 群成员未注册,或者群成员不属于当前群,或者被禁用 |
| 462 | 群不存在 |
| 463 | 群成员数超过最大限制 |
| 465 | 用户创建的群数量超过限制 |
| 500 | 服务器内部错误 |
| 503 | 服务器繁忙 |
| 509 | 无效协议 |
| 998 | 解包错误 |
| 999 | 打包错误 |
| ```群相关错误码``` | |
| 801 | 群人数达到上限 |
| 802 | 没有权限 |
| 803 | 群不存在 |
| 804 | 用户不在群 |
| 805 | 群类型不匹配 |
| 806 | 创建群数量达到限制 |
| 807 | 群成员状态错误 |
| 808 | 申请成功 |
| 809 | 已经在群内 |
| 810 | 邀请成功 |
| ```特定业务相关错误码``` | |
| 10431 | 输入email不是邮箱 |
| 10432 | 输入mobile不是手机号码 |
| 10433 | 注册输入的两次密码不相同 |
| 10434 | 企业不存在 |
| 10435 | 登陆密码或账号不对 |
| 10436 | app不存在 |
| 10437 | email已注册 |
| 10438 | 手机号已注册 |
| 10441 | app名字已经存在 |
</script>
<div id="app"></div>
<script src='http://10.240.129.92/plugin/markdown/templates/javascript/marked.min.js'></script>
<script>
var md = document.getElementById('md');
console.log(marked(md.innerHTML));
document.getElementById('app').innerHTML = marked(md.innerHTML);
</script>
</body>
</html>

Sorry, the diff of this file is not supported yet