Re: Parameters in URL not included
Date: Mon, 17 Dec 2007 19:19:18 +0100
Ron Stoll wrote:
> I am new to curl and have been trying to use it to send data to a SAP XI
> interface. XI requires various parameters to be included in the URL.
> When I run a trace these parameters seem to be chopped off and the XI
> application complains that information is missing. I have tried various
> options (-d and -F) to get the data included but I have had no success.
> Here is a sample of what I issue from the command line:
> curl --trace - -T test_file.xml
I'm not familiar with SAP, thus I'm not sure what verb of the http protocol
it uses. Option -T implies PUT, while -d and -F are suited to POST or GET.
Since you have to upload a file along with other variables, a POST using -F
would seem a suitable way to do it. In that case you may try adding the xml
file as an additional form field. E.g., assuming "file" is its field name,
curl -F "file=@test_file.xml;type=text/xml" -F "service=MES_TESTsystem" ...
Besides trial and error, there are other ways to learn the proper verb if
you can send the data manually with a browser:
from an html page, the latter contains a <form action=URL method=VERB>
tag, the default verb is GET, and the URL is the one you'll pass as
the main argument to curl. Field names come from the corresponding
2) Watch it in action. Using liveHTTPheaders with the Firefox browser
lets you view protocol fields. If the connection is in clear text (i.e.
not an https:// url) you may also employ a packet sniffer to see the
whole communication between the browser and the server. It is fairly
straightforward to reproduce that communication exactly with curl.
Keep using --trace or -v to spot any difference.
Received on 2007-12-17