2017-03-23 4 views
1

私のコンピュータ(Machine1)にミニプログラム/サーバーが構築されていて、別のコンピュータ(Machine2)でcURLを使用してファイルを作成または上書きしようとしています。したがって、Machine2はMachine1に接続されます。私はこれを行うコマンドのためのcURLのドキュメントを見てきましたが、スタックオーバーフローにも運がなかったのです。コマンドは、コマンドプロンプト経由であるかもしれないものにとCURLコマンドサーバー上のファイルを作成する

HTTP POST and GET using cURL in Linux

任意のアイデア:

https://curl.haxx.se/docs/manpage.html

は、私はまた、このSOポストの例を試してみましたか? (POSTコマンドに相当)。私はこれまで、-O、-K、-C、そして働いていない多数のものを使って試しました。

+3

したがって、カールは魔法ではありません。リモートサーバーにはどのプロトコル/ APIがありますか? FTP? SSH? WebDAV APIのいくつかの種類ですか? – Joe

+1

HTTP getとpost ...サーバーは単なるpythonファイルです – lucyb

+1

GETとPOSTを使用するには、サーバーで実行中のサーバープロセスが必要です。実行しているPythonコードが何らかのAPIを提供していますか? curlはファイルを任意に作成することはできません。それは他の実装の上にあるプロトコルクライアントです。 APIの場合、必要なアクションを実行できる既存のHTTPエンドポイントがあることを前提としています(ファイルを作成するための汎用HTTP GET/POSTはありません) – Joe

答えて

3
コマンドラインで

、すべてを行う必要がmultipart/form-data POSTリクエストをシミュレートするcurl --formを使用している:あなたは気にしない場合

curl --form "[email protected]" http://<Machine2>/<Path> 

testfileだけでも英語を使用し、フォームに使用するフィールド名ですワード。

@ここでファイルthefilename.jpgをファイルアップロードとして添付して使用します。 curl man docを参照してください。

サーバー側では、URL http://<Machine2>/<Path>を聞いてください。以前のPOSTリクエストを送信するときに、サーバーサイドプログラムがそれを取得し、添付ファイル(thefilename.jpg)を抽出してディスクに保存する必要があります。

関連する問題