Ошибка Couchdb, неверный запрос, причина, invalid_json

Изучение Couchdb с помощью этого руководства: http://guide.couchdb.org/editions/1/en/tour.html

и я дошел до бит для загрузки файлов. Я могу сделать это с помощью браузера, но не из командной строки, к сожалению, это мой первый опыт работы с JSON, поэтому знать, что я сделал неправильно, очень сложно, может кто-нибудь сказать мне, что я могу делать неправильно.

Поэтому я проверил и дважды проверил «-id» и «-rev», и они оба верны с документом, в котором я нахожусь, в том, что я могу успешно добавить другие поля с текстом.
и я нахожусь в том же каталоге, в котором находится файл изображения, и я создал небольшое изображение JPG и назвал его thing.jpg

Вот код, который я пытаюсь использовать:

curl -vX PUT http://127.0.0.1:5984/albums/b8afcee69b7f2d7267bda14dc2002ba3/ thing.jpg?rev=1-08e6f33452dc44b0aa0df15c2cda1a98 --data-binary @thing.jpg -H "Content-Type: image/jpg

Вот ответ:

> PUT /albums/b8afcee69b7f2d7267bda14dc2002ba3/ HTTP/1.1
> User-Agent: curl/7.38.0
> Host: 127.0.0.1:5984
> Accept: */*
> Content-Type: image/jpg
> Content-Length: 39844
> Expect: 100-continue
>
< HTTP/1.1 100 Continue
< HTTP/1.1 400 Bad Request
< Server: CouchDB/1.4.0 (Erlang OTP/17)
< Date: Wed, 22 Jun 2016 09:46:05 GMT
< Content-Type: text/plain; charset=utf-8
< Content-Length: 48
< Cache-Control: must-revalidate
* HTTP error before end of send, stop sending
<
* Closing connection 0
* Rebuilt URL to: thing.jpg/?rev=1-08e6f33452dc44b0aa0df15c2cda1a98
* Hostname was NOT found in DNS cache
* Could not resolve host: thing.jpg
* Closing connection 1
curl: (6) Could not resolve host: thing.jpg

Кроме того, синтаксис выглядит идентично учебнику, но я получаю эту ошибку, как упоминалось ранее, я могу добавлять другие поля, но не загружать с помощью команды curl. Я попытался с другим документом загрузить изображение через интерфейс браузера, и все прошло хорошо.

Пожалуйста, укажите мне правильное направление для исправления этого или, по крайней мере, дайте мне знать, что я делаю неправильно, чтобы я мог исследовать это лучше.

С уважением

0

Решение

Я думаю, что в части URL вашей команды cURL слишком много пустых.

Кроме того, кавычка отсутствует в конце.

Команда должна быть:

curl -vX PUT http://127.0.0.1:5984/albums/b8afcee69b7f2d7267bda14dc2002ba3/thing.jpg?rev=1-08e6f33452dc44b0aa0df15c2cda1a98 --data-binary @thing.jpg -H "Content-Type: image/jpg"
0

Другие решения

Других решений пока нет …