跳转至

更新Commit评论

PATCH /api/v5/repos/{owner}/{repo}/comments/{id}

该接口用于更新指定 Commit 上的评论内容。调用时需指定仓库所属空间地址、仓库路径与评论 ID,并通过请求体传入新的评论内容,接口返回更新后的评论详情。

访问令牌支持说明

  • AtomGit 用户访问令牌(AtomGit user access tokens)

是否允许匿名访问

此接口不允许匿名访问

请求参数

参数名 位置 类型 必填 说明
owner path string 是 仓库所属空间地址(组织或个人的地址path)
repo path string 是 仓库路径(path)
id path string 是 评论id
access_token query string 是 用户授权码

Request Body:

请求体为 JSON 对象,包含要更新的评论内容。

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "body": {
      "description": "评论内容",
      "type": "string"
    }
  },
  "required": ["body"]
}

响应参数

字段 类型 必返 可为空 说明
body string 是 — 评论内容
created_at string 是 — 评论创建时间
id integer 是 — 评论id
target object 是 — 评论目标对象,具体结构以实际返回为准
updated_at string 是 — 评论更新时间
user object 是 — 评论用户信息

user 对象

字段 类型 必返 可为空 说明
user.id integer 是 — 用户id
user.login string 是 — 登录名
user.name string 是 — 用户名
user.type string 是 — 用户类型

失败响应

只有 200/成功响应是不够的:调用方需要知道失败长什么样才能写错误处理。

400 参数错误

{
  "error": "invalid_request",
  "message": "参数 body 不能为空",
  "field": "body"
}

401 未认证

{
  "error": "unauthorized",
  "message": "缺少或无效的访问令牌"
}

注意: 以上错误响应字段名以后端实际返回为准。

HTTP 响应状态码

状态码 说明
200 成功(OK)
304 未修改(Not modified)
401 需要认证(Requires authentication)
403 禁止访问(Forbidden)
404 资源不存在(Not found)
429 请求过于频繁(Rate limited)
500 系统内部错误(Internal server error)

请求示例

参数说明

示例必须与本文档其余部分自洽,照抄即可调用成功。 认证方式为在请求 URL 上追加 access_token 查询参数(用户访问令牌)。

<owner> 替换为仓库所属空间地址(企业、组织或个人的地址 path); <repo> 替换为仓库路径(path); <id> 替换为要更新的评论 id; <token> 替换为你的 AtomGit 用户访问令牌。

cURL

curl -X PATCH 'https://api.atomgit.com/api/v5/repos/<owner>/<repo>/comments/<id>?access_token=<token>' \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -d '{"body": "更新后的评论内容"}'

JavaScript

// 原生 fetch (Node.js 18+ / 浏览器)
const response = await fetch(
  "https://api.atomgit.com/api/v5/repos/<owner>/<repo>/comments/<id>?access_token=<token>",
  {
    method: "PATCH",
    headers: {
      "Content-Type": "application/json",
      "Accept": "application/json"
    },
    body: JSON.stringify({ body: "更新后的评论内容" })
  }
);

if (!response.ok) {
  throw new Error(`请求失败: ${response.status}`);
}

const data = await response.json();
console.log(data);

Python

import requests

resp = requests.patch(
    "https://api.atomgit.com/api/v5/repos/<owner>/<repo>/comments/<id>",
    params={"access_token": "<token>"},
    json={"body": "更新后的评论内容"},
    headers={"Accept": "application/json"},
    timeout=10,
)
resp.raise_for_status()

print(resp.json())

响应示例

状态码: 200

{
  "body": "更新后的评论内容",
  "created_at": "2024-11-06T09:43:23+08:00",
  "id": 1492393,
  "target": {},
  "updated_at": "2024-11-14T18:44:53+08:00",
  "user": {
    "id": 496,
    "login": "xiaogang",
    "name": "xiaogang",
    "type": "User"
  }
}

错误码

错误码 说明
401 未认证或凭证无效(缺少/无效的访问凭证)
400 参数错误或请求无法解析
404 请求路径不存在
405 请求方法不支持
429 请求过于频繁,触发限流
500 系统内部错误

本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 gitcode-dev/atomgit-api-doc