地址
测试地址使用 https://api.blog120.com
协议
- 服务端使用
https
交互,测试模式使用https
- 支持http2.0/http1.1/http1.0
- 暂不支持 form-data的传值方式,请注意
交换文件格式
- 交换文件格式为
json
- 时间统一为UNIX时间戳,即1970年1月1日0时到现在所经过的毫秒数
客户端提交
- 客户端提交数据为标准的JSON格式,上传文件等除外。
- 示例:
{
"name": "van",
"sex": 1,
"password": "9218YUhzs7VBGH_UZ8qn=="
}
服务端返回
- 服务端返回标准格式如下:(例如请求服务端时间)
{
"status": 200,
"result": 1515858850853,
"code": "OK",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1dWlkIjoiY2M5ZDFhNmEtYWJmMy00ODhlLThkZjItNjVmYTM0NDQ4YjQ5IiwibmFtZSI6ImVyaWMyIiwiZW1haWwiOiJzc2gyQGdtYWlsLmNvbSIsInBob25lIjoiMTM4MDAxMzgwMTAiLCJsYXN0TG9naW5UaW1lIjp7ImhpZ2giOjM1MywibG93Ijo3Mjc4NTg3Mn0sInJlZnJlc2hUaW1lIjp7ImhpZ2giOjM1MywibG93Ijo3Mjc4NTg3Mn0sImlhdCI6MTUxNjMzMTU5NSwiZXhwIjoxNTE4OTIzNTk1fQ.7JUQgE1uSuWTtRtkxCnbKFRSpSLVmtjtIZzknn237V8",
"success": true
}
- success字段用于指示是否成功
- status字段 恒为200(今后可能会取消)
result 字段为真正所用信息
当错误发生时,服务器返回信息如下:
{
"success": false,
"message": "Recource not found.",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1dWlkIjoiY2M5ZDFhNmEtYWJmMy00ODhlLThkZjItNjVmYTM0NDQ4YjQ5IiwibmFtZSI6ImVyaWMyIiwiZW1haWwiOiJzc2gyQGdtYWlsLmNvbSIsInBob25lIjoiMTM4MDAxMzgwMTAiLCJsYXN0TG9naW5UaW1lIjp7ImhpZ2giOjM1MywibG93Ijo3Mjc4NTg3Mn0sInJlZnJlc2hUaW1lIjp7ImhpZ2giOjM1MywibG93Ijo3Mjc4NTg3Mn0sImlhdCI6MTUxNjMzMTU5NSwiZXhwIjoxNTE4OTIzNTk1fQ.7JUQgE1uSuWTtRtkxCnbKFRSpSLVmtjtIZzknn237V8",
"code": "RESOURCE_NOT_FOUND",
"status": 404
}
- success字段用于指示是否成功
- message字段用于给出本地化信息(强烈不建议使用,因其内容可能随用户的语言而变动,也不可用于进行判断)
- code字段用于指示出错问题
- status与http状态基本一致(今后可能会取消)
- token字段用于获取下次访问的令牌。请每次都保存好,并于下次访问的时候提交。详情参考这里
特殊数据
一些非JS的原生数据将在此处展示
长整形
长整型在JS中不被支持。然而在时间表示、文件检索中非常常见(结果集往往超过了int的最大值) 长整型我们使用低位和高位表示:
{
"high": 353,
"low": 72785872
}
该数字表示 1516196241360
转换为整形计算方法如下:
function toNumber() {
if ((this.high & Long.SIGN_MASK) !== 0) {
var l = ~this.low >>> 0;
var h = ~this.high >>> 0;
if (h > Long.HIGH_MAX || h == Long.HIGH_MAX && l == Long.MAX_UINT32) {
return Number.NEGATIVE_INFINITY;
}
return -(h * Long.HIGH_MASK + l + 1);
} else {
if (this.high > Long.HIGH_MAX) {
return Number.POSITIVE_INFINITY;
}
return this.high * Long.HIGH_MASK + this.low;
}
}
Long.MAX_UINT32 = 0xFFFFFFFF;
//
// (high & SIGN_MASK) != 0 denotes a negative number;
// that is, the most significant bit is set.
//
Long.SIGN_MASK = 0x80000000;
//
// When converting to a JavaScript Number we left shift the
// high word by 32 bits. As that isn't possible using JavaScript's
// left shift operator, we multiply the value by 2^32 which will
// produce the same result.
//
Long.HIGH_MASK = 0x100000000;
//
// The maximum value for the high word when coverting to
// a JavaScript Number is 2^21 - 1, in which case all
// 53 bits are used.
//
Long.HIGH_MAX = 0x1FFFFF;