1

我想将我在 GitHub 上的一些代码嵌入到我的博客中。到目前为止,我发现的最好方法是使用http://www.jamesward.com/2012/06/15/dynamically-rendering-github-files-in-web-pages(稍作修改即可修复base64 解码),然后对其进行一些自定义语法突出显示。

但是,如果没有身份验证,这将受到 GitHub 强制执行的 60 个请求/小时的速率限制。我不清楚在这种情况下身份验证如何工作——因为我可能使用的任何身份验证令牌都需要成为我博客上 JavaScript 的一部分,所以它基本上是公开的......

而且,即使我可以以某种方式验证这种使用(可能通过将我的Origin域与我的 GitHub 用户帐户连接?),这是否意味着我博客的所有读者都将计入这个共享速率限制,而不是未经身份验证的情况每个读者都计入他自己的 60/小时限制?

4

1 回答 1

4

首先回答第二个问题——是的,这就是会发生的事情。经过身份验证后 - 您在用户之间共享一个配额。未经身份验证时-配额在用户之间“分配”(我猜是基于IP地址)。

关于通过 JavaScript 与 GitHub 的 API 进行身份验证的通信——是的,您必须将令牌(或用户名和密码)放入您的脚本并使其公开。你显然不想这样做。您“预期”解决此问题的方式是拥有服务器端。在浏览器中执行的 JavaScript 将与您的服务器通信(没有速率限制,您可以根据需要保护它),服务器将与 GitHub 的 API 通信并将结果返回到您的 JS 脚本。由于没有人可以看到您服务器的代码,因此用于身份验证的凭据是不公开的。

于 2013-05-01T20:31:42.390 回答