【问题标题】:hoodie app on nodejitsu: added %2f confounding couchdb requestnodejitsu 上的 hoodie 应用程序:添加了 %2f 混淆 couchdb 请求
【发布时间】:2015-01-11 01:07:31
【问题描述】:

我在 nodejitsu 上部署了一个基本的教程连帽衫应用程序(在我的本地服务器上运行良好)。这是我部署的应用程序的网址:

http://reggie.nodejitsu.com

在确认用户登录状态后,应该会在右上角出现一个注册按钮,但确实如此,但在很长一段时间之后。

查看 nodejitsu 上的日志文件,我看到(个人详细信息已编辑):

Streaming logging information

out Thu, 13 Nov 2014 18:51:25 GMT Starting Plugin: 'hoodie-plugin-users'
out Thu, 13 Nov 2014 18:51:25 GMT All plugins started.
err Thu, 13 Nov 2014 18:51:25 GMT { [Error: not_found
missing]

然后稍后:

_header: 'GET /_users/org.couchdb.user%3Aadmin%2F HTTP/1.1\r\nHost: xxxxxxxxx.iriscouch.com\r\nAccept: application/json\r\nAuthorization: Basic YWRtaW46bm9uY3JpdGljYWw=\r\nConnection: keep-alive\r\n\r\n',

然后稍后:

out Thu, 13 Nov 2014 18:51:25 GMT 
err Thu, 13 Nov 2014 18:51:25 GMT Error confirming user: Error: not_found
missing

如果我直接从我的 nodejitsu couchdb 实例请求端点 /_users/org.couchdb.user%3Aadmin%2F,则会失败并显示 {"error":"not_found","reason":"missing"}。但是,如果我删除尾部的编码斜杠/_users/org.couchdb.user%3Aadmin,我会按预期返回用户。

所以在我看来,尾随编码的斜杠 (%2f) 搞乱了 couchdb 的身份验证,然后我推测应用程序需要很长时间才能确定用户是否登录到应用程序导致从超时尝试在没有所需凭据的情况下访问数据库。但我不知道如何阻止添加尾随编码的斜杠。

我是否正确诊断了问题,无论哪种方式,我该如何解决这个问题?

谢谢!

【问题讨论】:

    标签: couchdb nodejitsu hoodie


    【解决方案1】:

    您的 _users 数据库中似乎有 CouchDB 用户“admin”的用户文档,但该文档不应该存在。 CouchDB 管理员用户在_users 数据库中没有自己的文档。您得到的 Hoodie 错误是因为 _users 对象的格式错误和缺少用户数据库。当您删除 /_users/org.couchdb.user%3Aadmin%2F 时,它应该会按预期工作。

    【讨论】:

    • 谢谢。我认为这是正确的,但是一旦我进行了这些更改并重新启动了应用程序,我在 /vendor/assets 下的所有资产(包括重要的 javascript 文件)都会收到 404 Not Found 错误,这在我看来与 reggie.jit.su 无关,并重新路由到 reggie.nodejitsu.com 上的一些未定义的管理控制台。也许是时候重新开始 nodejitsu 部署了。
    猜你喜欢
    • 2012-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多