Repository navigation
Home
- 正式服务器地址: https://api.example.com
- 测试服务器地址: https://api.demo.example.com
如非特殊说明,请求的 HTTP body 需格式化为 json 格式,并标记 Content-Type 为 application/json。
服务器返回也是 json 的,并标记 Content-Type 为 application/json。
内容的编码方式均为 UTF-8(无 BOM)。
接口请求时需要客户端在 HTTP header 中通过 Authorization 字段带上 token,格式为:
Authorization: token
声明无需权限验证的接口不需要带 token。
请求成功时,响应 HTTP 状态码为 2xx,返回的内容包在 data 字段里,例如:
{
"code": 0,
"data": {
"id": "TP4bl6sJQ-ndMYZHpAxuLTsSw-GcQRpVET0a69nA",
"title": "Updated for Swift 5.3",
"content": "Added information about multiple trailing closures to the Trailing Closures section.\nAdded information about synthesized implementations of Comparable for enumerations to the Adopting a Protocol Using a Synthesized Implementation section.",
"author": {
"id": "UAnOiIAvB1keXOBFfvUezgIQ",
"name": "演示用户"
},
"create_time": "2020-06-22T10:00:00Z",
"status": [],
"allow_operations": ["comment", "edit"],
"comment_count": 0,
"like_count": 0
}
}请求失败,响应 HTTP 状态码为 4xx 或 5xx,返回的 code 非 0,并返回错误信息:
{
"code": 1000,
"error": "错误信息"
}通用的错误码有:
- 1003,token 无效,需要用户重新登入
有些操作的 API 只需返回是否成功的结果,通过返回的 code 区分即可,0 成功,非 0 失败,这种情况错误是可选的。
分页参数:
- page,从 1 开始
- page_size,分页大小,默认 10
注意:请求的分页参数需通过 URL 参数传递,不能在 body 中。
接口发送、接受的日期格式统一为 ISO 8601 格式,形如 2018-08-04T01:43:02Z。
对于整型 ID,App 中注意要使用长整型(64位或更高)解析、保存。
强烈不建议明文传密码,如果确实需要,请删除这段及链接到此处的链接
前端发送密码时需要对字段内容进行特殊处理,处理方式为 sha512("原始内容"+"全局盐")。
注意:服务器接收到的用户密码虽然是处理过的非明文,但也不可直接存,应使用 bcrypt、scrypt 或更安全的算法进行处理保存
客户端通过 HTTP header 中的 Accept-Language 声明用户使用的语言,服务器根据该字段调整返回所用的语言。
举例
Accept-Language: en-US;q=1,zh-hans-US;q=0.9