localhost
を使用してcURL
で実行されているサーバーに、csvまたはテキストファイルを含むPOSTリクエストを送信するにはどうすればよいですか。
私が試してみました curl -X POST -d @file.csv http://localhost:5000/upload
しかし、私は得る
{"メッセージ": "ブラウザ(またはプロキシ)が、このサーバーが理解できないリクエストを送信しました。" }
私のサーバーはflask_restful API
。事前に感謝します。
これを達成するための多くの代替方法があります。 1つの方法は、以下を使用したことです。
curl -F ‘data=@<file_location>’ <URL>
例えば。 curl -F [email protected] localhost:5000/h
コマンドはこのようにわずかに変更することもできます
curl -X POST -H 'Content-Type: text/csv' -d @file.csv http://localhost:5000/upload
上記は多くの方法のうちの1つです。フォームまたはデータの一部として送信することも、マルチパートなどとして送信することもできます。 Medium Post
CurlのデフォルトのContent-Typeはapplication/x-www-form-urlencoded
したがって、問題はおそらく、POSTしているデータが実際にフォームデータではないことです。コンテンツタイプヘッダーを適切に設定すると機能する場合があります。
-H "Content-Type: text/csv"
ただし、サーバーによって異なります。