软件开发培训学校:牛逼至极!用这个神器看代码太舒服了( 二 )

GitHub1s is a purely static web app (because it really doesn't need a backend service, does it?). So we just deploy it on GitHub Pages now (the gh-pages branch of this repository), and it is free. The service of GitHub1s could be reliable (GitHub is very reliable) because nobody needs to pay the web hosting bills.
总的来说,GitHub1s 这个仓库是基于 VS Code 构建的,灵感来源于 Code Server 这个 Repo,地址为: https://github.com/cdr/code-server,这个就是一个 Online 版的 VS Code 。那作者基于这个做了什么事呢?他基于 VS Code 供的 FileSystemProvider API 对接了 GitHub 的 REST API 实现了这些功能 。其中前者是 VS Code 供的,可以供文件读写操作,当然读写在线文件也是没问题的了;而后者是 GitHub 供的,通过 REST API 可以获取 Repo 的文件夹或者某个文件 。如此,GitHub1s 就诞生了 。知道了原理之后,我们也可以自己把 GitHub1s 代码下载下来,改写一下,扩展一些功能:比如解除只读限制,保存的时候直接存储到自己的 Repo 等 。具体的修改和开发流程可以参见: https://github.com/conwnet/github1s/blob/master/docs/guide.md#development访问频率限制另外作者也到了一点:
For unauthenticated requests, the rate limit allows for up to 60 requests per hour. Unauthenticated requests are associated with the originating IP address, and not the user making requests.
对于未授权的请求,API 的请求频率是有限制的,每个 IP 每个小时访问限制是 60 次,所以用着用着就容易超限制了,可能就打不开文件了 。这里的频率限制我解读下,有朋友可能好奇,因为这个网站是 github1s.com 来 serve 的,所以请求是不是都是 github1s.com 这个服务器发出来的呢?所以不同的人其实都是用的一个 IP?其实不是的,我观察了一下网络请求,是 当前网页直接请求了 GitHub 的 API 实现的,所以 IP 就是我们自己客户端的真实 IP,网络请求如下所示:
软件开发培训学校:牛逼至极!用这个神器看代码太舒服了

文章插图
 但是请求 GitHub 的 API 没有跨域问题吗?没有,这是因为 GitHub API 设置了解除跨域访问,Response Headers 里面可以看到:access-control-allow-origin: *所以任何网站都可以直接请求 GitHub 的 API 。OK,说回解除频率限制的问题:
For API requests using Basic Authentication or OAuth, you can make up to 5,000 requests per hour.
这里说如果登录了,每小时就可以高到 5000 次请求了 。怎么设置呢?可以在 github1s.com 打开侧栏的 OAuth 设置,如图所示:
软件开发培训学校:牛逼至极!用这个神器看代码太舒服了

文章插图
 然后点击 Generate New OAuth Token,跳到自己的 GitHub Setting 页面,生成一个 Token 就好了,如图所示:
软件开发培训学校:牛逼至极!用这个神器看代码太舒服了

文章插图
 好了之后贴回来就 OK 了,这样频率限制就解除了,爽歪歪 。彩蛋另外我还发现了有一个配的 Chrome 插件,也叫 GitHub1s,大家可以自己搜索安装:


以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!

「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助: