基本 API 调用说明

以赏的实验室有些在线 API 提供给同学们调用。在调用 API 之前,同学们可以访问 以赏的个人博客账户主页 获取自己的 apikey 。当然,同学们在请求时 可以不带 apikey 字段请求 API,但是会遭受到 比较严格的速率限制

同时,所有 API 均支持 HTTP 调用,但是推荐更安全的 HTTPS 调用。

速率限制说明

速率限制的设置是为了防止服务器受到恶意调用而导致服务器卡顿,以后如果用户量上升,热度变高的话会逐步放开速率限制。

以赏的实验室的所有公开 API 在请求时,均可以不带 apikey 请求。

但是,对于不同的请求方式只要携带上 apikey 字段均可启用 apikey 请求,比如在 GET 请求URL: https://lab.lovepikachu.top/api/randpika 默认是不带 apikey 的,服务器在内部处理时会自动带上默认的 apikey

如果需要携带 apikey 请求,可以 GET 请求如下URL: https://lab.lovepikachu.top/api/randpika?apikey=your-key

对于 POST 请求,想要携带 apikey 请求,如果是表单请求形式,在表单内包含 apikey 字段请求即可;如果服务器预要接收一个 JSON 格式的数据,在 JSON 数据的键值对内带上 apikey 即可,其它格式会在其 API 文档内说明。

不带 apikey 请求的速率限制并非 IP 限制,而是集体限制。假设一个 API 接口 5 分钟允许不带 apikey 请求 5 次,任何不带 apikey 的请求均会被记录。比如小明在 5 分钟内请求了 3 次,小亮就只能请求 2 次。如果有带 apikey 请求,且确保 apikey 不泄露的情况下可以独享请求次数。

在后续的文档中,将称呼 未认证用户未携带 apikey 请求的用户, 已验证用户携带 apikey 请求用户。

一般响应值说明

一般服务器的响应值是 JSON 数据,形如:

{
    "code": 0,
    "msg": "success.",
    "data": {},
    "success": false
}

下面是各个字段解释:

响应数据字段解释

字段

类型

说明

code

Integer, 一定

服务器处理结果代码。

msg

String, 一定

服务器处理结果信息。(此字段是可选的,可能不存在。)

data

String, Array or Object, 非一定

响应数据。

success

Boolean, 一定

服务器是否处理成功。

服务器处理结果说明

结果代码

结果信息

结果状态

结果原因

-2

Apikey is wrong.

false

APIKEY 不存在或被封禁。

-1

Rate limit for calls.

false

请求过快,速率限制。

0

Success.

true

请求成功,服务器返回数据。

1

Request format error or API does not exist.

false

请求方式错误,或 API 不存在。

2

Server error.

false

服务器内部错误。

其余不同 API 可能返回不同的值,会在对应页面解释。

版权纠纷说明

提供的 API 中有部分是通过网络爬虫爬取其它网站内容的,若有版权纠纷请联系 lovepikachu@foxmail.com 删除,请务必在主题中注明 “在线 API 纠纷” 。