残りのAPIにいくつかのデータを投稿したいと思います。Java用のCurlからPOST APIへの変換
API documentationは(38ページを参照してください)以下を要求します:
curl -u "USERNAME:PASSWORD" -H "Content-type: text/xml" -X "POST"
--data-binary @-
"https://qualysapi.qualys.com/qps/rest/3.0/create/was/webapp/" <
file.xml
Note: “file.xml” contains the request POST data.
Request POST data:
<ServiceRequest>
<data>
<WebApp>
<name><![CDATA[My Web Application]]></name>
<url><![CDATA[http://mywebapp.com]]></url>
</WebApp>
</data>
</ServiceRequest>
私は呼び出しがcurl
を使用して、コマンドラインで動作することを確認しています。
私はJava
に小さなアプリを書くようになり、UniRestが見つかりました。
問題が発生する箇所です。私はカール要求をUnirestに変換する方法を知らない。
私はずっと今のところ、これを持っている:
Unirest.post("http://apiurl).basicAuth("user","pass").field(name, file).asBinary();
後半
.field(name, file).asBinary();
doesntのは、私には意味をなさない。ファイルに名前を付ける目的は何ですか?ファイルからデータを取得することは考えていませんか?
さらに、データをファイルに書き込まないようにしたいと考えています。 UniRestで同じxml
を作成するにはどうすればいいですか?
xml
でない場合は、JSON
と同じことができますか?上記API(付録C)には、JSON
も使用できます。しかし、どのようにフィールドをネストすることができますか?Unirest
api
それは、その後 'ボディ(XML文字列だろう) 'コマンドラインの元の' curl'にマッチさせる? – Cripto
イップ、私はそれがうまくいくと思います。私はあなたのサーバーAPIに対してテストケースを実行することができないので、私は確信することはできません。 – RudolphEst
今日は後で確認し、正しい場合は正しいとマークします。上記の 'body'メソッドと' xml'データを使ってあなたの答えを編集してください。 – Cripto