使用 github.rest.git.createRef 在 Github API 上找不到 404

404 Not Found on Github API using github.rest.git.createRef

提问人:Sybuser 提问时间:10/2/2022 更新时间:10/2/2022 访问量:563

问:

我在 Github Action 工作流文件中使用以下代码:

          await github.rest.git.createRef({
            owner: context.repo.owner,
            repo: context.repo.repo,
            ref: 'refs/heads/' + '${{ github.event.inputs.combineBranchName }}',
            sha: baseBranchSHA
          });

代码结果为 404 :

RequestError [HttpError]: Not Found
    at /home/runner/work/_actions/actions/github-script/v6/dist/index.js:6173:21
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async eval (eval at callAsyncFunction (/home/runner/work/_actions/actions/github-script/v6/dist/index.js:13340:16), <anonymous>:71:3)
    at async main (/home/runner/work/_actions/actions/github-script/v6/dist/index.js:13436:20) {
  status: 404,
  response: {
    url: 'https://api.github.com/repos/myusername/myrepo/git/refs',
    status: 404,
    headers: {
      ...
    },
    data: {
      message: 'Not Found',
      documentation_url: 'https://docs.github.com/rest/reference/git#create-a-reference'
    }
  },
  request: {
    method: 'POST',
    url: 'https://api.github.com/repos/myusername/myrepo/git/refs',
    headers: {
      accept: 'application/vnd.github.-preview+json',
      'user-agent': 'actions/github-script octokit-core.js/3.6.0 Node.js/16.13.0 (linux; x64)',
      authorization: 'token [REDACTED]',
      'content-type': 'application/json; charset=utf-8'
    },
    body: '{"ref":"refs/heads/combined-prs-branch","sha":"a3167bb784fa5d045bbad57545a7a96c5d89be4f"}',
    request: { agent: [Agent], hook: [Function: bound bound register] }
  }
}

我正在使用可以访问公共存储库的 PAT。 我从 GITHUB_TOKEN 的 403 错误变成了 PAT_TOKEN 的 404 错误。 所以我想我解决了权限问题,但为什么现在是 404 ? 我可以在浏览器中访问URL https://api.github.com/repos/myusername/myrepo/git/refs

GitHub github-操作

评论


答: 暂无答案