2013-06-05 44 views
1

我試着添加用戶使用:Acralyzer:當添加invalid_json錯誤用戶

curl -X PUT -u myUsername:myPassword http://kaydee.iriscouch.com/_users/org.couchdb.user:myNewUsername -d '{"name":"myNewUsername", "password":"myNewUserPassword", "roles":["reporter", "reader"], "type":"user"}' -H "Content-Type: application/json" 

的反應是:

{"error":"bad_request","reason":"invalid_json"} 
curl: (6) Could not resolve host: password 
curl: (3) [globbing] error: bad range specification after pos 8 
curl: (3) [globbing] unmatched close brace/bracket at pos 7 
curl: (3) [globbing] unmatched close brace/bracket at pos 10 

我使用Windows 8.是否有任何改變,我需要使命令?

我相信IrisCouch正在使用CouchDB 1.2。

回答

8

所以,我找到了答案。您需要用雙引號(「)替換單引號('),然後轉義JSON字符串(\」)內的雙引號。我認爲這應該在Acralyzer documentation中提及,以便Windows用戶不需要額外的步驟來查找解決方案。

curl -X PUT -u myUsername:myPassword http://kaydee.iriscouch.com/_users/org.couchdb.user:myNewUsername -d "{\"name\":\"myNewUsername\", \"password\":\"myNewUserPassword\", \"roles\":[\"reporter\", \"reader\"], \"type\":\"user\"}" -H "Content-Type: application/json" 
+2

謝謝你:)我正在努力與其他張貼的答案 –

+1

謝謝!我正在把頭髮拉過來。 – motiver

-1

我通過刪除json中的空格並解決了問題,解決了這個問題。當使用'curl'命令時,可能空格在參數中不起作用。如果你仍然想保留空格,我建議你從你自己的答案中使用解決方案,否則嘗試刪除空格。