ERP ==> PLATFORM API>PLATFORM ==>WMS API>接口说明

天枢HTTP接口定义



请求地址

  1. 正式环境:http://dbh.gtg56.com/router/dubhe/service
  2. 沙箱环境: http://dubhe-test.iyaolian.cn:81/router/dubhe/service

请求参数说明

    参数名 参数说明 字符串限制
    app_key 分配的appKey [0-9a-zA-Z_]{1,10}
    customerId 分配的customerId [0-9a-zA-Z_]{1,10}
    method 请求的方法 [0-9a-zA-Z_.]{1,100}
    format 请求体格式 json/xml
    v 版本 1.0
    sign_method 签名方法 md5
    timestamp 请求时间 yyyy-MM-dd HH:mm:ss
    sign 签名值 针对请求参数和请求体的签名值

请求体说明

    参见各方法的请求提说明

协议描述

    本文档内描述的接口遵循REST规范,使用HTTP POST方式进行通讯。 请求方法的编码格式:“application/json; charset=UTF-8”。 报文使用http requestbody传递 请求示例: http:// [服务地址]?method=[API名]&timestamp=[2016-02-01 00:00:00]&format=json&app_key=[appkey]&v=1.0&sign=[xxxxxxxxxxxxxxxxxxx]&sign_method=md5&customerId=[用户id] 注:[]中需要根据具体业务进行填写。URL需要做URL Encoding处理。

报文示例

    请求报文 { "cartonNo": "XXX", "remark": "XXX", "tenantCode": "001", "trackingNo": "XXX", "udf1": "XXX", "wakeCode": "A01", "weight": 10.01, "warehouseId": 301, "weightime": "2016-11-11 00:01:02" } 响应失败报文 { "flag":"failure", "code":"B0010030003", "message":"订单状态不正确" } 响应成功报文 { "flag":"success", "message":"成功" }

签名方法说明

  1. 确保参数已经排序(升序)
  2. 把所有参数名和参数值拼接在一起(包含body体),并在拼接字符串的最前面和最后面加上分配的签名密钥
  3. 使用加密算法进行加密(目前仅支持md5算法)
  4. 把二进制转换成大写的十六进制

签名算法

    输入参数

      method= tianshu.itemlack.report timestamp=2015-04-26 00:00:07 format=json app_key= testerp_appkey v=1.0 sign_method=md5 customerId =test

    按首字母升序排列

      app_key= testerp_appkey customerId = stub-cust-code format=json method= tianshu.entryorder.query sign_method=md5 timestamp=2015-04-26 00:00:07 v=1.0

    连接字符串

      连接参数名与参数值,并在首尾加上secret,此处假设secret=test,如下: testapp_keytesterp_appkeycustomerIdstub-cust-codeformatjsonmethodtianshu.itemlack.reportsign_methodmd5timestamp2015-04-26 00:00:07v1.0bodytest 其中:body用请求中的body数据代替

    生成签名 sign

      32位大写MD5值-> D06D88CB34B2EC0E5C9BAB396C9542B6

    拼装URL请求

      将所有参数值转换为UTF-8编码,然后拼装,并作URL ENCODING 如下: http:// 服务器地址?method=tianshu.itemlack.report&timestamp=2015-04-26%2000:00:07&format=xml&app_key=testerp_appkey&v=1.0&sign=D06D88CB34B2EC0E5C9BAB396C9542B6&sign_method=md5&customerId=stub-cust-code

签名方法示例

  1. gate.io app
  2. 算法.NET示例

错误码解释(非法访问)

    错误码 错误描述 解决方案
    request.parameter.error 请求参数格式错误,请改正数据后重试。连续多次错误IP会被禁用 检查参数后重试
    expired.timestamp.error 请求时间戳已过期,请确保服务器时间正常后重试。连续多次错误IP会被禁用 检查时间戳后重试
    app.not.exist.error 不存在此授权信息,请确保授权信息正确后重试。连续多次错误IP会被禁用 检查授权信息后重试
    service.not.allow.error 未授权访问此服务,请确保授权信息正确后重试。连续多次错误IP会被禁用 禁止访问未授权服务
    tenant.not.allow.error 未授权访问此租户信息,请确保授权信息正确后重试。连续多次错误IP会被禁用 禁止访问未授权租户信息
    sign.error 签名验证异常,请确保授权信息正确后重试。连续多次错误IP会被禁用 检查授权信息后重试
    ip.forbidden.error 您已连续多次非法访问,此IP被禁用,请联系管理员 请联系管理员
    app.ip.forbidden.error 此授权禁止在当前IP下访问,请联系管理员。连续多次错误IP会被禁用 请联系管理员

错误码解释(业务异常)

    错误码 错误描述 解决方案
    app.forbidden.error 此授权已被禁用,请联系管理员 请联系管理员
    queue.not.exist.error 异步接口未创建队列,请联系管理员 请联系管理员
    request.data.error 请求体数据格式错误,请改正数据后重试 检查请求数据后重试
    forward.rule.error 转发规则异常,请联系管理员 请联系管理员
    business.system.error 访问业务系统异常,请稍后重试 请稍后重试
    exceed.allow.concurrent.error 超出授权并发访问量,请稍后再试 请稍后重试(如需提升并发访问量,请联系管理员)
    service.config.error 接口配置异常,请联系管理员 请联系管理员

访问限制

  1. 连续非法访问1000次后,会限制IP访问(联系我们解禁IP)
  2. 超出分配给当前appKey并发访问数量时,返回业务异常:超出并发访问量(如需要提升并发访问量,请联系我们)
  3. 其它