Appearance
论坛帖子审核
用于版主对指定板块下的帖子进行审核操作(通过或拒绝),支持GET和POST请求方式。根据应用“令牌启用状态”(apptoken)自动选择验证方式:令牌启用时通过token验证身份,未启用时通过账号密码(user+pass)验证,同时需配合appid、uid、id和signature完成请求校验。
请求地址 GET / POST
http
https://nobase.cn/api/bbs/examine请求参数
| 参数名 | 位置 | 类型 | 必选 | 说明 |
|---|---|---|---|---|
| appid | query | string | ✅ 是 | 应用ID,开发者中心获取的应用唯一标识 |
| uid | query | string | ✅ 是 | 板块ID,帖子所属板块的唯一标识(从板块列表接口获取) |
| id | query | string | ✅ 是 | 帖子ID,需审核的帖子唯一标识(从帖子列表接口获取) |
| exam | query | string | ✅ 是 | 审核结果:1表示通过,2表示拒绝 |
| signature | query | string | ✅ 是 | 应用签名,与后台配置一致,用于验证请求合法性 |
| token | query | string | 条件必选 | 用户令牌,仅当令牌启用(apptoken=1)时需传递;需为当前应用下的有效令牌 |
| user | query | string | 条件必选 | 用户账号,仅当令牌未启用(apptoken=2)时需传递;仅支持纯数字格式(如手机号) |
| pass | query | string | 条件必选 | 用户密码,仅当令牌未启用(apptoken=2)时需传递;仅支持字母+数字组合(无中文/符号) |
返回示例
成功响应(审核操作完成)
json
{
"code": 200,
"msg": "success",
"data": "操作成功"
}失败响应(参数问题)
json
{
"code": 204,
"msg": "fail",
"data": "接口参数错误:apptoken=1需传token!"
}json
{
"code": 204,
"msg": "fail",
"data": "接口参数错误:apptoken=2需传user和pass!"
}json
{
"code": 405,
"msg": "fail",
"data": "审核参数错误(需为1或2)"
}失败响应(身份验证异常)
json
{
"code": 401,
"msg": "fail",
"data": "token无效或已过期(非当前应用/开发者)!"
}json
{
"code": 403,
"msg": "fail",
"data": "账号格式错误!仅支持数字账号!"
}json
{
"code": 404,
"msg": "fail",
"data": "用户账号密码错误!"
}失败响应(权限/资源异常)
json
{
"code": 405,
"msg": "fail",
"data": "权限不足:您不是版主无法审核帖子"
}json
{
"code": 407,
"msg": "fail",
"data": "该帖子不存在!"
}json
{
"code": 404,
"msg": "fail",
"data": "该帖子不需要审核!"
}失败响应(配置/状态异常)
json
{
"code": 400,
"msg": "fail",
"data": "应用配置错误:apptoken必须为1或2!"
}json
{
"code": 404,
"msg": "fail",
"data": "开发者账号已逾期(2天),请缴费后重试!"
}返回数据结构
| 参数名 | 类型 | 说明 |
|---|---|---|
| code | number | 状态码:200=审核成功;204=参数缺失/错误;400=应用配置错误;401=token无效;402=签名失败;403=账号格式错误;404=资源不存在/状态异常(如帖子无需审核、账号密码错误);405=权限不足/审核参数错误/操作失败;407=应用配置/板块/帖子不存在 |
| msg | string | 状态描述:success=成功,fail=失败 |
| data | string | 响应数据:返回操作结果提示或错误原因,如“操作成功”“权限不足:您不是版主无法审核帖子” |
代码示例
javascript
// 审核通过(apptoken=1,需传有效token)
const params = new URLSearchParams({
appid: "your_app_id",
uid: "2001", // 帖子所属板块ID
id: "8001", // 待审核帖子ID
exam: "1", // 1=通过,2=拒绝
token: "valid_moderator_token", // 版主有效令牌
signature: "your_signature"
});
// 发起POST请求
fetch("https://nobase.cn/api/bbs/examine", {
method: "POST",
body: params,
headers: { "Content-Type": "application/x-www-form-urlencoded" }
})
.then(res => res.json())
.then(res => {
if (res.code === 200) {
console.log("审核成功:", res.data);
} else {
console.error("审核失败:", res.data);
}
})
.catch(err => console.error("请求异常:", err));javascript
// 审核拒绝(apptoken=2,需传user和pass)
const url = new URL("https://nobase.cn/api/bbs/examine");
url.searchParams.set("appid", "your_app_id");
url.searchParams.set("uid", "2002");
url.searchParams.set("id", "8002");
url.searchParams.set("exam", "2"); // 拒绝审核
url.searchParams.set("user", "13800138000"); // 纯数字账号
url.searchParams.set("pass", "ModPass123"); // 字母+数字密码
url.searchParams.set("signature", "your_signature");
// 发起GET请求
fetch(url.toString())
.then(res => res.json())
.then(res => {
res.code === 200
? console.log("审核结果:", res.data)
: console.error("错误:", res.data);
});python
import requests
# 审核通过(apptoken=1)
params = {
"appid": "your_app_id",
"uid": "2003",
"id": "8003",
"exam": "1",
"token": "valid_moderator_token",
"signature": "your_signature"
}
response = requests.post(
"https://nobase.cn/api/bbs/examine",
data=params,
timeout=8
)
res_data = response.json()
print("审核结果:", res_data["data"])python
import requests
# 审核拒绝(apptoken=2)
params = {
"appid": "your_app_id",
"uid": "2004",
"id": "8004",
"exam": "2",
"user": "13900139000",
"pass": "ModPass456",
"signature": "your_signature"
}
response = requests.get(
"https://nobase.cn/api/bbs/examine",
params=params,
timeout=8
)
res_data = response.json()
print(res_data)注意事项
验证方式说明
- 接口根据应用配置的“令牌启用状态”(
apptoken)自动选择验证方式:apptoken=1(令牌启用):必须传递token,无需传递user和pass,否则返回参数错误;apptoken=2(令牌未启用):必须传递user和pass,无需传递token,否则返回参数错误。
- 两种验证方式不可混用,同时传递会导致参数冲突。
- 接口根据应用配置的“令牌启用状态”(
参数规范
exam仅支持1(通过)或2(拒绝),其他值返回“审核参数错误”;user(令牌未启用时)必须为纯数字(如手机号),否则返回“账号格式错误”;pass(令牌未启用时)必须为字母+数字组合(无中文/符号),否则返回“密码格式错误”;uid(板块ID)和id(帖子ID)需对应存在,否则返回“该板块不存在!”或“该帖子不存在!”。
审核前提与权限
- 帖子必须处于“待审核”状态(否则返回“该帖子不需要审核!”);
- 板块必须已开启审核功能(否则返回“该板块帖子审核未开启!”);
- 操作账号必须为该板块版主(版主列表从板块配置中获取,非版主返回“权限不足”)。
状态校验逻辑
- 开发者账号需正常启用且VIP未逾期,否则返回逾期提示;
- 应用需处于正常状态(非审核中、非停用),否则返回应用状态异常提示;
signature需与后台配置一致,否则返回“签名校验失败!”。
安全建议
- 令牌未启用时,
pass以明文传递,生产环境必须使用HTTPS协议,防止密码泄露; - 优先推荐启用令牌验证(
apptoken=1),减少账号密码传递频率; - 版主令牌/账号需严格管控,避免权限滥用;
- 前端可提前校验
exam参数值(仅1或2),减少无效请求。
- 令牌未启用时,

