【发布时间】:2012-11-04 10:24:05
【问题描述】:
我试图运行everyauth 模块的示例。但是,当我输入 sudo node server.js 时出现此错误
Error: Cannot find module '../restler'
我已经在谷歌上搜索了一段时间,但无法准确找出此错误背后的原因。有什么建议吗?
【问题讨论】:
我试图运行everyauth 模块的示例。但是,当我输入 sudo node server.js 时出现此错误
Error: Cannot find module '../restler'
我已经在谷歌上搜索了一段时间,但无法准确找出此错误背后的原因。有什么建议吗?
【问题讨论】:
我追踪了这个问题并提交了一个拉取请求。我必须解决两个问题。就像 broofa 所说,当 Restler 实际上不再是 Everyauth 的依赖项时,它被引用了。解决方法是改用 Request 模块。
即使您自己设法解决了这个问题,您还会遇到另一个问题。由于微博认证模块配置错误,示例认证服务器在每次运行时都会抛出错误。在它之后设置的任何其他模块都会引发错误,而这正是您运行示例 Everyauth 服务器时发生的情况。
如果您想要修复问题的 Everyauth 版本,请参阅 my fork of the project。我向主项目提交了一个拉取请求,因此希望它会尽快集成。
【讨论】:
你在运行 express3 吗?我有同样的问题,根据
https://github.com/bnoguchi/everyauth/issues/359
发现最好的选择是遵循
处的 express3 指令https://github.com/bnoguchi/everyauth#installation
并以这种方式安装everyauth:
npm install git://github.com/bnoguchi/everyauth.git#express3
而不是通常的“npm install everyauth”方法。
【讨论】:
看起来 viadeo 适配器没有被移植到使用 @mikael 的请求模块?
$ grep -ri restler .
./Changelog.md:- Use https://github.com/mikeal/request instead of restler.
./lib/modules/viadeo.js: , rest = require('../restler');
您可能需要修补并提交拉取请求。
【讨论】: