CNB 后端使用指南
纳雍万能墙使用 CNB Git 仓库作为后端,本文档说明具体用法。
基础配置
| 项 | 值 |
|---|---|
| API 地址 | https://api.cnb.cool |
| 仓库路径 | cnbnn/nayong-wall |
| 默认分支 | main |
| 鉴权方式 | Authorization: Bearer {token} |
数据目录结构
data/
config.json # 系统配置
posts/ # 帖子数据
{category}-{id}.json
users/ # 用户数据
user-{openid}.json
towns/ # 乡镇配置API 使用
读取配置
bash
curl -H "Authorization: Bearer {token}" \
"https://api.cnb.cool/cnbnn/nayong-wall/-/git/raw/main/data/config.json"读取帖子列表
bash
# 列出 posts 目录下的文件
curl -H "Authorization: Bearer {token}" \
"https://api.cnb.cool/cnbnn/nayong-wall/-/git/contents/data/posts"
# 读取单个帖子
curl -H "Authorization: Bearer {token}" \
"https://api.cnb.cool/cnbnn/nayong-wall/-/git/raw/main/data/posts/job-001.json"创建帖子(Issue 方式)
bash
curl -X POST \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{
"title": "招奶茶店店员",
"body": "分类: job\n乡镇: yongxi\n联系人: 张先生\n电话: 138xxxx1234\n\n详细描述:\n纳雍雍熙街道新开奶茶店招聘店员2名...",
"labels": ["job", "yongxi", "pending"]
}' \
"https://api.cnb.cool/cnbnn/nayong-wall/-/issues"评论(互动)
bash
curl -X POST \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{"body":"请问还招吗?"}' \
"https://api.cnb.cool/cnbnn/nayong-wall/-/issues/{number}/comments"图片上传
bash
# 1. 获取上传 URL
UPLOAD=$(curl -s -X POST \
-H "Authorization: Bearer {token}" \
"https://api.cnb.cool/cnbnn/nayong-wall/-/upload/imgs" \
| python3 -c "import sys,json; print(json.load(sys.stdin).get('upload_url',''))")
# 2. PUT 上传
curl -X PUT \
-H "Content-Type: image/jpeg" \
--data-binary @photo.jpg \
"$UPLOAD"查询 Issues
bash
# 查询所有帖子(Issue)
curl -H "Authorization: Bearer {token}" \
"https://api.cnb.cool/cnbnn/nayong-wall/-/issues"
# 按标签筛选
curl -H "Authorization: Bearer {token}" \
"https://api.cnb.cool/cnbnn/nayong-wall/-/issues?labels=job"标签体系
分类标签
| 标签 | 含义 |
|---|---|
job | 招聘求职 |
house | 房屋租售 |
secondhand | 二手交易 |
carpool | 拼车出行 |
missing | 寻人寻物 |
shop | 店铺推广 |
event | 活动召集 |
状态标签
| 标签 | 含义 |
|---|---|
pending | 待审核 |
active | 已发布 |
rejected | 已拒绝 |
report | 被举报 |
pinned | 已置顶 |
乡镇标签
以乡镇拼音作为标签,如:yongxi、zhaile、weixin 等。
错误码
| errcode | 说明 | 处理 |
|---|---|---|
| 5 | 资源不存在 | 检查路径 |
| 7 | Token 权限不足 | 检查令牌授权范围 |
| 16 | 未登录 | 检查 Authorization |
| 10009 | 路径冲突 | 仓库/文件已存在 |
详细 API 文档
完整 API 端点列表见 cnb-as-backend API 速查手册。