- - PR -
Httpによるファイル転送プログラム
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-03-25 16:20
現在、クライアントPCからWEBサーバーに対してHTTPによるファイル転送プログラムを作成しようと考えています。
FTPによるプログラムは作成することはできました。 しかし、サーバーはFTPに対応していないため、HTTPによって作成する必要が起こりました。サーバーのFTPへの対応をお願いしましたが、サーバーはお客様のものなのでFTPに対応することはできないという回答がきました。 プログラムはVBで作成しています。WEBサーバーはApacheで構築されています。 とりあえずInetコントロールで以下ようにプログラムしてみました。 Inet1.URL = "http://localhost/UploadTest/" ' HTTPアドレスを指定 Inet1.Protocol = icHTTP ' 接続方法を指定 Inet1.Execute , "PUT " ここで「PUT」すればできるのかと考えているのですがどのようにすればよいかわかりません。いろいろやってみて、既にサーバー上に存在するファイルの中身を変えたりはできたのですが、新規にファイルをサーバーに追加することがうまくできません。 Inetコントロールでなくても結構なのでなにかいいやり方があればご教授ください。 httpによってファイルが転送できればよいです。 よろしくお願いします。 | ||||||||
|
投稿日時: 2006-03-25 16:32
言語はなんですか?
とりあえず下を参考にしてください。 Visual C# .NET を使用して Web サイトにファイルをアップロードする方法 http://support.microsoft.com/default.aspx?scid=kb;ja;816150 | ||||||||
|
投稿日時: 2006-03-25 16:45
ごめんなさい。
上のリンクでは質問にお答えしていませんね。 HttpでPUTはセキュリティ上できるものなのですか?まずサーバーの設定を確認したらよいと思います。 また,Httpでファイル転送というとWebDAVという感じがするのですが,これもサーバーの設定によると思います。 とにかくまず,サーバーのApacheの設定を確認するべきだと思います。 | ||||||||
|
投稿日時: 2006-03-26 00:38
YAS様
さっそくのお返事ありがとうございます。 言語はVBです。WebDAVには対応しております。 説明が悪くて申し訳ありません。 ASP.netによるアップロードの仕方は解ります。 今回はFFFTPのようなソフトのHTTP版を考えております。クライアントにアプリケーションをダウンロードしインストールし、そのアプリケーションを起動してファイルをアップロードしたいのです。 よろしくお願いします。 | ||||||||
|
投稿日時: 2006-03-26 01:57
。。。セキュリティは無視ですか。そうですか。 って感じですが、、、それとも自分でWinny(を超えるサーバ)を作りたいのだろうか。 いや、同一性も理解できないのだろうけど。 イントラネットだから大丈夫?あー、それにしてもセキュリティ無視しすぎです。 いくらなんでも(クライアント部分の)Windows OSか、あるいはWebサーバが、その処理 を止めてるかと。 もちろん、まったくなしぢゃないでしょうから(FTPはまさかAnonymous??) HTTPでどのように認証するかを考えた方がいいような気も。 でも、認証をまるで考えず、ファイル内容を変更できるサーバもすごいけど。。。 それとも認証は完璧なのかな。 | ||||||||
|
投稿日時: 2006-03-26 09:30
>言語はVBです。WebDAVには対応しております。
それでしたら,WebDAVでファイル転送するのが楽だと思います。 それでいいのか悪いのかは私にはわかりませんが,WebClientクラスで簡単にできませんか? 「お客様」のサーバーだそうですので,セキュリティに配慮し,慎重に仕様をお決めになってください。 | ||||||||
|
投稿日時: 2006-03-26 18:07
お返事ありがとうございます。
WebClientクラスで作成したところアップロードすることができました。 WebClientクラスはVB.netに対応したクラスだと思うのですがVB6.0で作成する場合は どのクラスを使用すればよろしいのでしょうか?ご存知であればご教授ください。 また、WebDAVに対応していないサーバーで同様な機能を作成する場合はどのようにすればよろしいのでしょうか? 質問が多くて申し訳ありません。 認証方法はお客様ともう少し詰めてみます。もし認証方法をこうしたほうがいいということがあればご教授くささい。 | ||||||||
|
投稿日時: 2006-03-26 22:09
INETコントロールを使います。リファレンスを見た限りでは、HTTPのPUTに対応しているので出来るはずです。・・・ですが、使いにくいコントロールなのでお勧めはしません。WinInetAPIを使った方がらくだと思います。
冷静に考えてみてください。ファイルの書込みが出来ないように設定(構成)されているWEBサーバーで、ファイルの書込みが出来るわけないでしょう。HTTP以外のプロトコル・・・例えばFTPやSambaを使って書き込みような方法を検討してください。 |