COSTDB POST запрос с использованием завитков
У меня установлена CouchDB v2.2.0 на сервере Linux. У меня есть 5 баз данных создать:
- десять кубометров
- model_attribute_groups
- mydemo
- реестр
- verifytestdb
Я могу успешно выполнить запрос Mango из Fauxton, используя содержимое файла json, указанного ниже.
Я могу успешно подключиться к базе данных model_attriubute_groups с другого сервера Linux с помощью команды curl GET:
curl -v http://my.server.com:5984/model_attribute_groups/_all_docs
Я пытаюсь составить команду curl для запуска запроса JSON Mango с другого Linux-сервера.
У меня есть мой Mango Query в файле: "mangoReqPay", который, как говорит ls -l, имеет длину 221 символ.
{ "selector": {"status":"stable", "model":"PC-20", "variant":{ "$in": ["15", "30"] } }, "fields":["_id","_rev","status", "model","variant","variant-type", "oem","historicaloem","displaymodel", "sactmodel"]}
Вот команда, которую я пытаюсь использовать.
curl -H "Content-Type: application/json" \
-H "Content-Length: 221" \
-X POST \
-d mangoReqPay \
-H "Host: http://my.server.com:5984/model_attribute_groups\_find"
Когда я отправляю эту команду, я не получаю ответа, она просто сидит там, ожидая большего ввода.
Может кто-нибудь подтолкнуть меня в правильном направлении?
Спасибо
Богатые
1 ответ
Вы не указали URL. Ваше имя хоста в параметре "-H" НЕ является URL-адресом, который вы хотите запросить curl - он просто устанавливает заголовок.
Когда я запускаю команду, я получаю сообщение об ошибке (и это правильно):
curl: no URL specified!
Просто укажите URL, который вы хотите получить curl без каких-либо флагов в конце (или в начале).
Также вам не нужно "Content-Length: 221". Если вы хотите, чтобы он читал из файла, вы начинаете имя файла с '@'