使用管理服务器凭据打开CouchDB会话

时间:2013-11-07 09:33:41

标签: couchdb

我已经创建了一个管理服务器。如果我尝试访问http://localhost:5984/_utils/config.html

蒲团问我管理员的凭证,如果我用户名e密码,那么所有工作都很完美。 但是,如果我尝试运行命令:

curl -X POST http://username:password@localhost:5984/_session

具有HTTP 401错误的couchdb响应。消息是

{error":"unauthorized","reason":"Name or password is incorrect."}

但我确定用户名和密码是正确的。 实际上,如果我尝试运行命令:

curl -X GET "http://username:password@localhost:5984/_session"

响应正常,内容消息告诉我,我的角色是_admin。

为什么POST方法不起作用?

1 个答案:

答案 0 :(得分:1)

您需要POST用户名和密码作为网址编码POST正文,或作为JSON对象:

name=root&password=relax

或:

{
    "name": "root",
    "password": "relax"
}

您需要为其中任何一个设置正确的Content-Type标头。

有关详细信息,请参阅官方文档http://docs.couchdb.org/en/latest/api/server/authn.html