curlの--dataオプションはどのようなデータ変換を行いますか?

curlの--dataオプションはどのようなデータ変換を行いますか?

私は最近--dataカールのオプションを使っていくつかのJSONをサーバーにアップロードしましたが、マンページを読んだ後にそれが破損していないことを信頼できるかどうかはわかりません。

パーママンページ 明らかにカールの違いを説明します。--data/--data-asciiそして--data-binaryつまり、@filenameその構文を使用してカールにファイルからデータを読み取ると、改行はファイル--dataから削除されます--data-binary

しかし、マンページは返品もっと違いがあるようです。説明の次の段落は、特定のデータに対して行われた改行の削除に加えて、いくつかの「変換」があることを示すと--data-binary合理的に解釈することができます。--data

--data-バイナリ<データ>

...

...dataは、改行文字とキャリッジリターンが保持されることを除いて、--data-asciiと同様に公開されます。変換は完了しません。(強調は私のもの)

この神秘的な「変形」とは何ですか?存在しますか?マニュアルのオプションセクションに文書化されておらず、--data実験的には見つかりません。予想できる明白なもの--data(例:アンパサンド、スラッシュ、ハッシュ、疑問符、等号、漢字、または笑顔の目を持つ猫の顔) そのまま送信されます。

ではマニュアルには何と出ていますか?

ベストアンサー1

この神秘的な「変形」とは何ですか?

バイナリフラグがないと、テキストモードで読み取られ(Windowsでは異なる場合があります)、それを要求するプラットフォーム(IBMメインフレームなど)stdinでは、データは文字セットIBM-1047(別名)でEBCDIC再エンコードされます。 (友達に渡された)データ長を計算する方法にも違いがあります。ISO8859-1iconv(3)Content-Length

おすすめ記事