CURL: заголовок Content-Type [application / x-www-form-urlencoded] не поддерживается - PullRequest
0 голосов
/ 26 декабря 2018

Работая с ElasticSearch и пробуя некоторые запросы для создания индекса, публикуя данные с помощью curl.

Используя curl, предоставленный GIT (Windows GIT)

Команда идет, чтобы добавить документ виндекс с именем customer.

Команда curl с сайта ElasticSearch скопирована, как показано ниже:

curl -X PUT "localhost:9200/customer/_doc/1?pretty" -H 'Content-Type: application/json' -d'
{
  "name": "John Doe"
}
'

Указанная выше команда не работает для меня.Я просто делаю это одной строкой, как показано ниже

curl -X PUT "localhost:9200/customer/_doc/1?pretty" -H 'Content-Type: application/json' -d '{"name": "John Doe"}'

Я получаю ошибку ниже.

Please refer the screenshot.

Другие команды, такие как создание индекса, как показано ниже

curl -X PUT "localhost:9200/customer?pretty"

Response is :

{
      "acknowledged" : true,
      "shards_acknowledged" : true,
      "index" : "customer"
    }

Команда curl, имеющая json в качестве содержимого, не работает.

Уже сослался на ссылку ниже, но не смог ее получить Тип контента Проблема

1 Ответ

0 голосов
/ 26 декабря 2018

В Windows вам нужно использовать двойные кавычки и экранировать те, которые в содержании:

curl -X PUT "localhost:9200/customer/_doc/1?pretty" -H "Content-Type: application/json" -d "{\"name\": \"John Doe\"}"

Кроме того, вы можете сохранить содержимое в файле с именем data.json

{"name": "John Doe"}

А затем пошлите его через локон вот так, чтобы вам не пришлось избегать двойных кавычек:

curl -X PUT "localhost:9200/customer/_doc/1?pretty" -H "Content-Type: application/json" --data-binary @data.json
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...