httpieを使用してhttp PUTを使用してファイルをアップロードするには?

httpieを使用してhttp PUTを使用してファイルをアップロードするには?

一部のWebサーバーテストでは、次のようにファイルのアップロードにカールを使用しています。

$ curl --silent --digest --user user:pass --upload-file filename http://server/dir/

今、同じ機能を保持するためにhttpieを使用しようとしています。次のようなことを試しました。

$ http --auth-type digest --auth user:pass PUT http://server/dir/

ただし、アップロードするファイル名を渡すパラメータが見つかりません。たとえば、これを試してみてください

$ http --auth-type digest --auth user:pass PUT http://server/dir/ A=B

その結果、コンテンツは{"A": "B"}httpリクエスト本文に渡されますが、(おそらくバイナリ)ファイルのネイティブコンテンツをリクエスト本文(カールなど)に渡したいと思います。

httpieを使用してこれを行う方法はありますか?

(私はhttpie 0.9.2を使ってKubuntu 16.04ホストでテストしました。)

ベストアンサー1

さて、httpie文書を掘り下げてみると、生の本文データを渡す2つの方法があることがわかりました。

パイプまたは入力リダイレクトを介して。 httpieはstdinからテキストデータを読み込みます。

$ cat filename | http --auth-type digest --auth user:pass PUT http://server/dir/filename

または

$ http --auth-type digest --auth user:pass PUT http://server/dir/filename <filename

または、@次のパラメーターを使用してください。

$ http --auth-type digest --auth user:pass PUT http://server/dir/filename @filename

また見なさい:

おすすめ記事