前情提要
本文详细记录了使用 Heroku,解决 gitment 登录失败,报 [object ProgressEvent] 的问题。某种程度上借助了网友的思路和方法, 并使用了免费的强大的 Heroku。某些步骤可能需要梯子。(废话少说直接开干)gitment 登录失败,报[object ProgressEvent],原作者的服务无法访问。然后去 GitHub 的 issue 找解决办法,发现一群网友也遇到了同样的问题。
有大佬说直接使用 github 认证的接口
// 将 gitment.js 中的
_utils.http.post(‘https://gh-oauth.imsun.net’, {})
// 改为
_utils.http.post(‘https://github.com/login/oauth/access_token’, {})
如果你的网站使用的是 GitHub Page, 并且使用 GitHub 提供的域名,如“https://yiluyanxia.github.io/…”,那么你只需要做到这一步就可以重新正常使用 gitment,但是你和我一样作,偏要没事捣鼓一个自己的域名,那你就要往下看了。从自己的域名直接访问 github 认证的接口,这样就跨域了。
原作者应该也是考虑到这点,才会自己搭建一个访问 github 认证的 node 服务。
废话少说直接开干
Heroku 是一个支持多种编程语言的云平台即服务,注册 Heroku,在右上角的“new”,选择“Create New App”新建一个应用。
根据操作系统下载并安装 Heroku CLI,或者使用 npm install heroku。
npm install heroku
登陆 heroku,OS X 输入指令之后,会自动打开一个页面,而 Windows 要手动输入账号密码。(不知道亲们是不是也是一样)
heroku login
2 和 3 的详细介绍可以看这里 –> 开始你的 node 服务详细步骤
获取 gh-oauth-server
git clone https://github.com/imsun/gh-oauth-server.git
修改 package.json,在 script 中添加如下代码
“heroku”: “NODE_ENV=production node server”
新建 Procfile 文件, 输入以下内容
web: npm run heroku
在 heroku 上找到你刚刚创建的应用,切换到“Deploy”, 有详细的操作步骤,
$ heroku git:clone -a YourAppName
$ cd YourAppName
$ git add .
$ git commit -am “make it better”
$ git push heroku master
切换到“Settings”,找到“Domain”的值,即应用的地址。
// 将 gitment.js 中的
_utils.http.post(‘https://gh-oauth.imsun.net’, {})
// 改为
_utils.http.post(‘https://YourAppName.herokuapp.com/’, {})
至此,所有的步骤走完,你就可以愉快的使用 gitment 了。当然,如果你有自己的服务器,发布到上面是最好的。但本渣没有这个能力!!!