Проще использовать файл (req.xml
в моем случае) с контентом, который вы хотите отправить, например:
curl -H "Content-Type: text/xml" -d @req.xml -X POST http://localhost/asdf
Вам также следует рассмотреть возможность использования типа application / xml (различия объяснены здесь )
В качестве альтернативы, не требуя, чтобы curl фактически читал файл, вы можете использовать cat
, чтобы плюнуть файл в стандартный вывод и сделать curl
для чтения из стандартного вывода следующим образом:
cat req.xml | curl -H "Content-Type: text/xml" -d @- -X POST http://localhost/asdf
Оба примера должны выдавать идентичные выходные данные службы.