统一说明

返回结果说明

  云瓣校园对外接口返回的数据格式示例:

{
    "status": 200,
    "times": 10,
    "message": null,
    "debug": null,
    "result": {
        "accessToken": "068e9eaa-3164-4667-9a1b-8224232f---",
        "expireTime": 1495517569288,
        "tokenType": "APP"
    }
}
{
    "status": 123003,
    "times": 3,
    "message": "grantType无效。",
    "debug": null,
    "result": null
}

  字段说明:

字段 说明
status 状态码,成功时为200,非200均为失败
times 接口耗时
message 接口提示信息,一般只有失败时才会给出,成功时为null
result 接口实际返回结果,失败时值为null

AccessToken模式

  开发者调用云瓣校园某些接口时,需传递身份凭据参数:accessToken

  AccessToken的获取方式见下方基础接口。

  除AccessToken标记身份外,云瓣校园还要求开发者对参数进行签名。

  实际调用方式形如:

https://open.campus.yunban.com/api/org/member?id=1048&orgId=yunban&accessToken=TOKEN&nonce=NONCE&sign=SIGN

签名算法

  开发者需自行准备一个6-10位的nonce参数参与签名

  约定:

  • 参数体必须是 json(map) 或 json数组(list) 格式
  • 以下“排序”均指字符串的ASCII编码值的升序
  • GET方式传递的参数不参与签名
  • 对于没有请求体的请求,请求体视为空map:{}

签名步骤简述:

  1. 将map类型的参数按key排序,若value仍是map,则该value也要按此规则排序

  2. list类型参数的元素顺序无须处理,但若该元素是map,则该元素需要排序

  3. 将参数转为json串 -> json

  4. 去掉第3步得到的json串中的双引号、单引号、空格得到rawString

  5. 拼接rawString、appSecret、nonce 得到 joinString: = rawString + appSecret + nonce

  6. 签名取md5结果的第9至24位的大写:signature = MD5(joinString).subString(8, 24).toUpperCase();

results matching ""

    No results matching ""