Skip to content
liangchuan edited this page Mar 25, 2014 · 10 revisions

系统间接口协议说明(HTTP方式)

统一标准的 输入/输出 完成 webapp 和 ejabberd 数据交换,协议说明如下

  • 服务URL: 用一个固定的URL互相接收 post 请求,

  • ejabberd 服务 URL

http://host:5380/?body={...}
* webapp 服务 URL

http://host:port/?body={...} (具体格式待定)

  • 参数名称:body
  • 参数结构:json

输入参数:

{
  "service":"业务接口注册名",
  "method":"方法名",
  "sn":"全局唯一的UUID,用于对应日志",
  "params":{"参数名A":"参数值A","参数名B":"参数值B"}
}

参数说明:

  • service: 业务接口注册名,【pages-业务接口】 页中会给出业务模块的明细;
  • method: 具体的业务方法;
  • sn: 请求流水号,要求全局唯一,建议使用 UUID
  • params: 供业务方法使用的参数,具体参数内容,应参考业务接口明细;

返回值说明:

统一格式的返回,其中 success 标识请求是否成功,返回 true 则 entity 为 object,object 格式由业务模块定义 返回 false 则表示请求异常,其中 entity 为 exception 信息

{
    "sn":"请求流水号"
    "success": true / false, 
    "entity": object / exception
}

输入/输出 例子:

以校验token请求参数为例,假设认证模块业务名为 service.sso ,方法名为 check_token

输入如下:

{
    "sn":"123456789"
    "service":"service.sso",
    "method":"check_token",
    "params":{
        "token":"987654321"
    }
}

输出如下:

{
    "sn":"123456789"
    "success": true, 
    "entity": "ok"
}
Clone this wiki locally