我正在学习本教程 https://hyperledger.github.io/composer/integrating/deploying-the-rest-server.html
我已经完成了所有步骤。但是当我通过github运行rest-server时,它会打印出跟踪堆栈跟踪。
错误 404无法GET / auth / github 状态:404 错误:无法GET / auth / github at raiseUrlNotFoundError(/home/praval/.nvm/versions/node/v6.11.1/lib/node_modules/composer-rest-server/node_modules/loopback/server/middleware/url-not-found.js:21:17)< /强>
答案 0 :(得分:0)
我假设您通过npm install -g passport-github安装了Github策略?
如果是这样,它会创建一个文件夹/ auth / github?
您需要按文档访问此文件夹:“通过导航到环境变量COMPOSER_PROVIDERS中指定的authPath属性的值来验证REST服务器。在上面的示例中,这是http://localhost:3000/auth/github”< / p>
在我的情况下,没有创建该文件夹。我在Github网站上看到:https://github.com/cfsghost/passport-github “Passport-Github的作者长时间没有保留原始模块。由于Github将其API升级到3.0版本,因此模块中的功能无效。我们将其分发并用新名称护照重新发布到NPM -github2“
我正在寻找这方面的指导。
答案 1 :(得分:0)
在创建私有api之前,只需在终端中执行此命令。
export COMPOSER_PROVIDERS='{
"github": {
"provider": "github",
"module": "passport-github",
"clientID": "<your id>",
"clientSecret": "<your secret>",
"authPath": "/auth/github",
"callbackURL": "/auth/github/callback",
"successRedirect": "http://localhost(domain of angular app):4200(port)/home(page to redirect)",
"failureRedirect": "http://localhost(domain of angular app):4200(port)/login-github(page to redirect)""
}
}'
检查一切是否正常 - 运行命令
echo $COMPOSER_PROVIDERS
在此之后,您将看到COMPOSER_PROVIDERS值。
在github个人资料应用程序(https://github.com/settings/applications/)之后,您必须配置&#34; 主页网址&#34; (例如http://APIdomain:3000/)和&#34; 授权回调网址&#34; (例如http://APIdomain:3000/auth/github/callback)