采坑记录:Steem 文档- 中国内地访问

in #code6 years ago (edited)

作为一个有理想的程序员,哪能不会用API。可是国内网络访问steem的文档,你点目录也不会有反应的,至于为什么,让我来解开谜团。

国内点开https://developers.steem.io/ 这个网址后,会有一个极长时间的等待,此时浏览器一片白,可是也不像被墙的网站直接报错,这个过程大概几十秒到几分钟不等,而进去之后,点什么都是不会跳转的,之前偶尔点一下想看,但很少有能正常看的时候,我就很奇怪,所以今天我必须要弄明白是怎么回事。

于是,我按下了F12。
访问developers.steem.io.png
这是怎么回事?几乎所有的文件都从服务器传了过来,可网页就是不显示。仔细的看,我发现jquery这个文件在等待中,为什么你要等待呢?

于是,我点了这个家伙,想看看request是什么。
访问developers.steem.io2.png

哦,原来如此,jquery一般的网站都是填一个google之类大公司的cdn地址,减轻自己服务器的压力,steemit当然也是这么做的,只不过遗憾的是,国内竟然会无法拉取这么一个基础的模块,真是服了。

这样来说,我就没有办法看到这个文档,steemit将与我擦肩而过,在未来漫长的岁月里,我只能守着那道伟岸城墙,看鸟群如steemit一般展翅飞翔。

当然不可以,我决定自己搭一个网站,我要在自己的网站上把这个jquery文件改成国内的cdn,我要守着高墙与雄鹰共舞。

感谢steemit对文档的开源,地址在https://github.com/steemit/devportal
1.我在服务器上clone了这个git repo
2.我安装了jekyll这个ruby软件,然后按照文档build了整个文档。
3.而后,我知道所有可以供服务器直接使用的网页文件在_site文件夹中。
4.我找出了一个nodejs写的简陋服务器程序,试着跑了一下,修改jquery文件的那个google链接后,的确是飞快载入。
5.但是我发现,我至少要手动修改上百个html文件中的那个jquery链接,才能够无障碍愉快的阅读文档。
6.于是,我写了一个简单的python程序:

import os
from os.path import join, getsize
tar = r"/home/http913/devportal/_site"
worry = r"https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"
right = r"https://cdn.bootcss.com/jquery/1.11.2/jquery.js"
for root, dirs, files in os.walk(tar):
    for file in files:
        file_path = join(str(root),file)
        file_data = ""
        if ".html" in file_path:
            with open(file_path, "r") as f1:
                for line in f1:
                    line = line.replace(worry,right)
                    file_data+=line
            f1.close()
            with open(file_path,"w") as f2:
                f2.write(file_data)
            f2.close()

7.然后我可以在8080端口访问了,但是太丑,我下载了nginx,设置了反代理,终于可以愉快的看文档了。
我的这个网站地址是http://10eos.com,国内有需要看文档的伙伴可以过来瞧瞧。