Curl Global Community

Full Version: HTTPサーバにファイルをアップロードとダウンロード
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
HTTPサーバ(WebDAV)にファイルをアップロードとダウンロード(あるいは開く)
の操作はCURL7.0で実現できますか、ご存知の方はいらっしゃいますでしょうか。
教えていただけませんか。よろしくお願いします。
HttpFileクラス のhttp-read-open-byteメソッドを使って、POST(引数にrequest-method = HttpRequestMethod.post)でデータ(引数request-dataにファイルデータをセット)をサーバに送信し、サーバサイドではJakarta commonsのUploadFile などを使って受信する実装することで、HTTPサーバにファイルを送信することができます。

ちなみに、イメージのようなバイナリファイルでなく、テキストファイルであればhttp-read-openメソッドを利用することで実現できます。

ご回答をいただきありがとうございます。
CURLは直接にHttpサーバに接続して操作できませんか?
(普通なupload/dowand/open操作です)
よろしくお願いします。

他のAjaxなどと同様に、HTTPでファイルアップロードはサーバサイドの作りこみが少々必要となってきます。

ダウンロードなどについては可能です。(http-read-open(-byte)メソッドの戻り値InputStreamを利用。)

よろしくお願いいたします。
ちなみに、WebDavを使う場合は、CurlでWebDavプロトコルを実装する必要がありそうです。

よろしくお願いいたします。
お世話になります。
HttpFormのadd-file(add-file-data)メソッドで実現できますか。
もしできれば、教えていただきますと幸いです。
よろしくお願いします。
ちょっと無理そうですね。WebDAVのプロトコルには、HttpRequestMethod.putが必要ですが、それが、http-read-openやHttpFormなどで実装されて無く、今後の機能拡張に期待したいところでしょうね。。。
> HttpFormのadd-file(add-file-data)メソッドで実現できますか。


これでファイルをサーバに送ることはできると思います。(試していないですが・・・)
ただ、サーバ側でアップロードしたファイルを受け取る処理はやっぱりコーディングしないといけないです。

例えばJavaであれば以下のUploadServlet.java程度です。
http://www.atmarkit.co.jp/fjava/javatips...ta018.html

HttpRequestMethod.putはHttpFormで対応してないですが、http-read-openなどで実装されているそうです。hokadaさんが言ったようにサーバサイドを介入せずにやりたければ、webDAVのプロトコルを実装する必要があるようですね。
大変失礼しました。
(02-29-2012, 06:04 PM)heavybugtracker Wrote: [ -> ]ちょっと無理そうですね。WebDAVのプロトコルには、HttpRequestMethod.putが必要ですが、それが、http-read-openやHttpFormなどで実装されて無く、今後の機能拡張に期待したいところでしょうね。。。

ご回答をありがとうございます。
「ネットワークドライブの割り当て」を利用して、HTTPのURLをローカルドライブに変更して、
{copy from:Url, to:Url, error-if-exists?:bool = true, recurse?:bool = false}(プロシージャ)
を使って、ローカルのファイルコピーようにHTTPサーバーにファイルコピーできますか。
Pages: 1 2