开放平台

电话咨询 400-000-7749

QQ咨询
  • 交互格式说明

  • 更新时间:2015-11-06

    1.1 编码格式


  • 交互过程中统一使用 UTF-8编码


    1.2 请求体


  • 请求体格式为UTF-8编码的JSON格式的字符串,如:
  • {"number":"1","appId":"mylinl1"}


    1.3 请求头


  • User-Agent: openApi
  • Content-Type: application/json; charset=utf-8
  • accept-encoding: gzip,deflate
  • time-stamp: 1437528688233
  • data-signature: BF706E6AC693BA3B1BABD32E6713431D

  • time-stamp: 时间戳, 它是自 1970年1月1日(08:00:00 GMT)至当前时间的总毫秒数。它也被称为Unix时间戳(Unix Timestamp)
  • data-signature:请求体通过md5算法生成的签名


  • Java生成方式

  • String data-signature = encryptToMd5String(JSONStr,appKey)

  • String encryptToMd5String(String content,String appKey)
  • {
  • return encryptToMd5String(
  • StringUtils.trim (appKey)+StringUtils.trim(content));
  • }

  • String encryptToMd5String(String content)
  • {
  • String md5String = null;
  • MessageDigest md = MessageDigest.getInstance("md5");
  • md.update(content.getBytes("UTF-8"));
  • md5String = parseByte2HexString(md.digest());
  • return md5String;
  • }

  • String parseByte2HexString(byte buf[])
  • {
  • StringBuffer stringBuffer = new StringBuffer();
  • for (int i = 0; i < buf.length; i++)
  • {
  • String hex = Integer.toHexString(buf[i] & 0xFF);
  • if (hex.length() == 1) {hex = '0' + hex;}
  • stringBuffer.append(hex.toUpperCase());
  • }
  • return stringBuffer.toString();
  • }

  • PHP生成方式

  • $signature = strtoupper(md5($appKey.$jsonData));


  • C#生成方式

  • FormsAuthentication.HashPasswordForStoringInConfigFile(appkey+jsonData, "MD5")


    1.4 响应体


  • 响应体格式为UTF-8编码的JSON格式的字符串,如:
  • {"number":"1","appId":"mylinl1"}


    1.5 响应头


  • data-signature: BF706E6AC693BA3B1BABD32E6713431D
  • Content-Type: application/json;charset=UTF-8


  • data-signature的生成方式与请求头的data-signature生成方式一样,用以确保数据是从银豹系统中返回