文档集成

Rust · 0.1.0

API 访问

明确身份认证,从只读请求开始。

使用自己的实例地址

REST API 由应用在 /api/v1 下提供,不在这个官网上。请在账号设置中获取个人访问令牌,保存在私有环境或密钥存储中;离开 localhost 后使用 HTTPS。下例假定 MEMOS_URL 和 MEMOS_TOKEN 已安全设置,它不会登录或创建令牌。

curl --fail-with-body \
  -H "Authorization: Bearer $MEMOS_TOKEN" \
  "$MEMOS_URL/api/v1/auth/me"

curl --fail-with-body --get \
  -H "Authorization: Bearer $MEMOS_TOKEN" \
  --data-urlencode "pageSize=20" \
  "$MEMOS_URL/api/v1/memos"

阅读准确的接口约定

API 索引列出当前 Rust 实现 REST 定义中的全部 92 项操作。每页展示路径、参数、请求体、响应及关联结构。生成文件的 info.version 是结构生成器使用的值,不是应用的 0.1.0 发行号。memos/abc 这样的资源名不等同于显示名称。

分页、更新掩码与重试

实现分页或 PATCH 前,先阅读调用约定与操作特有的运行说明。一些小型集合忽略分页输入;UpdateInstanceSetting 忽略 updateMask 并替换所选设置的完整载荷。附件与引用集合替换同样要求完整目标集合。写入超时后,应先检查资源结果再重试。REST 的 JSON 状态使用数字错误码,Connect 则采用另一种线上的错误表示。

创建并妥善保存个人令牌

在应用中进入「设置 → 访问令牌」,点击创建,填写能说明用途的描述,并选择适合集成的到期时间。创建后立即把令牌保存到认可的密钥存储,因为令牌值只在创建结果中披露。每个集成使用独立令牌,方便单独撤销。这会授予该账号的 API 访问,并不代表支持按工具或只读范围授权。

准备临时 Bash 会话

下面会交互读取令牌而不回显,不会把令牌字面值写入命令历史。填写实际应用地址,不带末尾斜杠。不要开启 shell 跟踪,也不要把环境变量内容复制到支持报告。此例用于本地操作,不能代替生产密钥管理器。设置后执行本页前面的只读请求;完成后清除令牌变量。

export MEMOS_URL='https://notes.example.com'
read -r -s -p 'Personal access token: ' MEMOS_TOKEN
printf '\n'
export MEMOS_TOKEN
# Run the read-only checks above, then:
# unset MEMOS_TOKEN

读懂第一次响应

GetCurrentUser 应返回你预期账号的身份;ListMemos 返回 memos 数组,并可能带 nextPageToken。空数组本身不等于认证失败,也可能是没有可见笔记或筛选排除了结果。401 应检查 Bearer 头和令牌到期/撤销状态;403 应检查账号与资源权限;404 应先检查应用地址和准确资源名。排查应用问题时不要把令牌发送给公开文档站点。