Skip to content
This repository was archived by the owner on Aug 2, 2020. It is now read-only.

Commit da8ea19

Browse files
committed
Release v1.0.3
1 parent 512eebc commit da8ea19

File tree

4 files changed

+19
-5
lines changed

4 files changed

+19
-5
lines changed

docs/API.md

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,14 +28,28 @@ Authorization: token kSLuTF2GC2Q4q4ugm3
2828
```json
2929
{
3030
"status": "ok",
31+
"retcode": 0,
3132
"data": {
3233
"id": 123456,
3334
"nickname": "滑稽"
3435
}
3536
}
3637
```
3738

38-
`status` 字段如果是 `ok` 则表示 API 存在、参数有效,并且已经调用了酷 Q 的对应函数,但由于酷 Q 的函数并没有明显的成功与否的反馈,不能确定是否真的操作成功(例如,如果传入的 QQ 号不是好友,实际上是无法成功发送消息的);如果是 `failed` 则表示 API 不存在,或参数不正确。
39+
~~`status` 字段如果是 `ok` 则表示 API 存在、参数有效,并且已经调用了酷 Q 的对应函数,但由于酷 Q 的函数并没有明显的成功与否的反馈,不能确定是否真的操作成功(例如,如果传入的 QQ 号不是好友,实际上是无法成功发送消息的);如果是 `failed` 则表示 API 不存在,或参数不正确。~~
40+
41+
`status` 字段如果是 `ok` 则表示操作成功,同时 `retcode` (返回码)会等于 0,即酷 Q 函数返回了 0,也就是酷 Q 认为成功了,但实际上有某些情况下其实是没有成功的,比如向没有加入的群发送消息,返回码是 0,日志里也没有提示发送失败,但显然是发送不了的。这一点在酷 Q 的 [官方文档](https://d.cqp.me/Pro/%E5%BC%80%E5%8F%91/Error) 也说明了:
42+
43+
> 需要指出的是,某些接口暂未进行错误代码的处理,此时即使发生错误,仍返回0。
44+
45+
`status` 字段如果是 `failed` 则表示操作失败,此时 `retcode` 有两种情况,当大于 0 时,表示是 HTTP API 插件判断出的失败(此时根本不用调用酷 Q 的函数就可以确定操作失败,比如调用 API 时没有传入必须的字段),这个目前有如下情况:
46+
47+
| 返回码 | 说明 |
48+
| ---- | ---------------------------------------- |
49+
| 100 | 默认的错误码,通常是因为没有传入必要参数,某些接口中也可能因为参数明显无效,比如传入的 QQ 号小于等于 0 |
50+
| 101 | 调用的接口路径不存在 |
51+
52+
另外一种情况是 `retcode` 小于 0,此时即为调用酷 Q 函数的返回码,具体含义直接参考 [Pro/开发/Error](https://d.cqp.me/Pro/%E5%BC%80%E5%8F%91/Error)
3953

4054
`data` 字段为 API 返回数据的内容,对于发送消息、踢人等不需要返回数据的操作,这里为 null,对于获取群成员信息这类操作,这里为所获取的数据的对象,具体的数据内容将会在相应的 API 描述中给出。
4155

io.github.richardchien.coolqhttpapi.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55
"ret": 1, // 返回码,固定为1
66
"apiver": 9, // Api版本,本SDK为9
77
"name": "HTTP API", // 应用名称
8-
"version": "1.0.2", // 应用版本
9-
"version_id": 6, // 应用顺序版本(每次发布时至少+1)
8+
"version": "1.0.3", // 应用版本
9+
"version_id": 7, // 应用顺序版本(每次发布时至少+1)
1010
"author": "Richard Chien", // 应用作者
1111
"description": "使酷 Q 支持通过 HTTP 上报事件信息及调用接口",
1212
"event": [ // 事件列表,同一事件类型可重复定义(发布前请删除无用事件)

src/misc_functions.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ size_t curl_write_stringstream_callback(char* buf, size_t size, size_t nmemb, st
88

99
size_t curl_write_file_callback(char* buf, size_t size, size_t nmemb, FILE* fp);
1010

11-
bool isnumber(const std::string& s);
11+
bool isnumber(const std::string& s); // act as "is_positive_integer", actually
1212

1313
std::string itos(int64_t i);
1414

src/request.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,7 @@ int64_t cqhttp_get_integer_param(const struct cqhttp_request& request, const cha
164164
if (str)
165165
{
166166
if (isnumber(str))
167-
result = atol(str);
167+
result = stoll(str);
168168
free(str);
169169
}
170170
else

0 commit comments

Comments
 (0)