У меня действительно типичная проблема. У меня есть файл XML, который я должен опубликовать на сервере. Сетевой инженер этого сайта сказал мне использовать функцию cURL. Функция, которую он предоставил мне, была ...

curl --data-binary @/opt/somefile.xml http://1.2.3.4/gateway/submit?source=FOO&conversationid=1234567

Когда я запускаю эту команду, я получаю сообщение об ошибке «Неверный URL, возвращающий 400 статус»

Я застрял в этой проблеме довольно долгое время, и я серьезно расстроен. Я пытался бежать ...

curl http://1.2.3.4/gateway/submit?source=FOO&conversationid=1234567

и я получаю ответ от "Тестового сообщения" машины вместе с некоторыми параметрами идентификации хост-системы. Что это, вероятно, будет означать, что URL-адрес назначения в порядке и доступ к нему осуществляется с помощью команды cURL.

Существуют ли особые требования для отправки файлов XML через --data-binary? Нужно ли форматировать XML специальным образом? Синтаксис команды cURL неверен?

Любая помощь будет принята с благодарностью!

1 ответ1

0

HTTP Code 400 Bad Request означает, что с отправленным вами запросом что-то не так. Это может быть по любой причине, которую разработчик запрограммировал. Он предназначен для указания ошибки пользователя.

Если этот URL предназначен для получения XML, это может означать, что вы пропустили заголовок Content-Type . Чтобы указать этот заголовок:

curl http://1.2.3.4/gateway/submit?source=FOO&conversationid=1234567 --header "Content-Type:application/xml"

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .