【问题标题】:How to commit to a github repo from a website (IN BROWSER) using javascript如何使用 javascript 从网站(在浏览器中)提交到 github 存储库
【发布时间】:2022-12-13 02:04:57
【问题描述】:

我有一个网站需要一个 JSON 文件来显示一种托管在 GitHub 页面上的时间表。不知道什么是 javascript 或 GitHub 的人需要能够每周更改该 JSON 文件。

为了解决这个问题,我创建了一个网站,该网站从他们可以编辑的谷歌表格中读取数据,并通过单击按钮将其转换为 js 对象。我现在只需要将此对象从网站获取到第一个 GitHub 存储库上的 JSON 文件中,但我不知道如何执行此操作。我知道您可以以某种方式使用 GitHub API,但是如何使用?

附言我知道将令牌内置到网站中是一种安全风险,这就是为什么我打算只将令牌放在 google 工作表中,这要求用户在访问之前验证 google 帐户。

【问题讨论】:

  • 我建议不要使用 github 来存储用户数据?

标签: javascript json github github-pages github-api


【解决方案1】:

考虑使用@octokit/rest

npm install @octokit/rest
const { Octokit } = require("@octokit/rest");

// Authenticate to the GitHub API using your personal access token
const octokit = new Octokit({
  auth: "YOUR_PERSONAL_ACCESS_TOKEN"
});

// Update the JSON file in your repository
await octokit.repos.updateFile({
  owner: "YOUR_GITHUB_USERNAME",
  repo: "YOUR_REPO_NAME",
  path: "path/to/file.json",
  message: "Update JSON file",
  content: "BASE64_ENCODED_CONTENT_OF_JSON_FILE"
});

【讨论】:

  • code 是针对 Node.js 的,但问题是关于在浏览器的网页上运行的代码。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-04
  • 2022-11-15
  • 1970-01-01
  • 2016-11-12
  • 2019-02-24
  • 2021-09-29
相关资源
最近更新 更多