DOBON.NET DOBON.NETプログラミング掲示板過去ログ

リクエストクエリとRequest.BinaryRead

環境/言語:[C#]
分類:[ASP.NET]

http://blog.livedoor.jp/shinchi_forum/
1週間ほど前からASP.NETでネットアプルを開発し始めた者です。

.aspxに対して、POSTでファイルをアップロードするときに
データはRequest.BinaryReadを使って、その中から
自分でデータを一つ一つ取り出さないといけないのでしょうか?

実装されている機能はないのでしょうか?
Request.QueryStringではリクエストタイプがGETでしか値が取れません。

いくらかシステムを作ってみました、このサイトの情報も役に立ちました
ありがとうございます

http://shinchi_forum.japan.webmatrixhosting.net/iPostCard.aspx

http://shinchi_forum.japan.webmatrixhosting.net/RequestLogger.aspx?logs=view
■No10816に返信(新地フォーラムさんの記事)
> http://blog.livedoor.jp/shinchi_forum/
> 1週間ほど前からASP.NETでネットアプルを開発し始めた者です。
>
> .aspxに対して、POSTでファイルをアップロードするときに
> データはRequest.BinaryReadを使って、その中から
> 自分でデータを一つ一つ取り出さないといけないのでしょうか?

PostedFile.SaveAs メソッドでファイルの保存ができます。

参考:
Visual Basic .NET を使用して ASP.NET の Web サーバーにファイルをアップロードする方法
http://support.microsoft.com/default.aspx?scid=kb;ja;323245
あ、ありがとうございます...
じつは、一生懸命しらべてあったのが、Mooの教えてれた方法だったんです。

http://shinchi_forum.japan.webmatrixhosting.net/iPostCard.aspx
このアプリの追加のページでUPに成功はしているんですが、Request.BinaryReadで
データを取り出すときに”ある”文字列からある文字列までを取り出すように
書いているので、ユーザーが予期せぬデータ(文字列)を送信した場合ファイル
のアップロードは失敗してしまいます。

実装されている機能ならまずそんなエラーは起きないだろうと思って
探していました。

みんなさんがやっているやり方では.aspxファイルのなかにHTMLを書いて
それとC#やVBで書いたコードと連携させているようなんですが
全部C#で書いています。

ASP.NETの本とか読んだことが無いので私のやり方がはずれているのかも
知れないんですが、PHPやJAVAと互換性をもたせつつコードを書きたい
と思っています。

いろいろ調べたんですが、もしかすると自分で実装しないと無いのかもしれ
ません、すいません。
■No10846に返信(新地フォーラムさんの記事)
> あ、ありがとうございます...
> じつは、一生懸命しらべてあったのが、Mooの教えてれた方法だったんです。
>
> http://shinchi_forum.japan.webmatrixhosting.net/iPostCard.aspx
> このアプリの追加のページでUPに成功はしているんですが、Request.BinaryReadで
> データを取り出すときに”ある”文字列からある文字列までを取り出すように
> 書いているので、ユーザーが予期せぬデータ(文字列)を送信した場合ファイル
> のアップロードは失敗してしまいます。

やりたいことは
・画像ファイルをアップロードしたい。
・アップロードされたファイルを保存したい。
・悪意のあるアップロードに対処したい。

ということではないでしょうか...
すいません、前回の文でMooさんの名前をコピーしてペーストした
だけになっていたので、呼び捨てみたいになってしまって
ちゃんと書いていませんでした。

やりたいことは、Mooさんの返信、通りだと思います。

以下のサイトに資料がありました
http://www.kcat.zaq.ne.jp/yumenokunisha/develop/bin2str.htm
私のやり方も、ほとんど同じです。

DOBON.NET | プログラミング道 | プログラミング掲示板