-PR-
解決済み

Web画面を遷移してもデータを保持する場合の、データ量の上限は?

  • 困ってます
  • 質問No.14983
  • 閲覧数1106
  • ありがとう数4
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 75% (3/4)

Webで、画面遷移してもデータを保持させるには、
私の知っている範囲では、
(1)隠しフォームを使う
(2)Cookieを使う
という方法があると思います。

これらの方法を使った場合、
保持できるデータ量の上限や、
何画面くらいまではデータ保持可能なのか?といった
制約はどうなっているのでしょうか。
具体的に自分で使ったことが無いので、分からなくて困っています。
「何Kバイトまで」「何画面まで」といったことがお分かりの方、
教えてください。

それと、他に、こんな方法があるよ!
この方法だと、ここまでデータが持てるよ!というのを
ご存知の方も、教えてくださると嬉しいです。
(NTサーバでASPを使っても、データの保持はできるんでしょうか?)

よろしくお願いします。
通報する
  • 回答数2
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.2
レベル8

ベストアンサー率 67% (21/31)

大量のデータを保存したい場合、
IIS/ASP の考え方をうまく利用すればいいかと思います。

保存したいデータをサーバー側で管理するようにします。
それぞれのデータには、識別番号(ID)を設定します。

ID をクライアントとの間でやり取りするようにします。

ID をクライアントとやり取りする方法としては、次のようなものがあります。
1. Cookie : IIS/ASP で利用している方法
 利用者のブラウザが Cookie を使えることが必要。
 i-mode 等では使えない
2. クエリー引数
例: http://server/test.asp?id=00001
 クエリー引数をすべてのサーバー送信時に
 つけることが必要。
 ユーザーがブックマークする場合も考えておく
3. input type=hidden を使う
 フォーム形式が必要
 クエリー引数形式との併用も検討

なお、実装にあたっては、次の点も注意する必要があります。
1. データを保存する期間
 データを破棄するタイミングをいつにするのか。
 IIS/ASP の場合、その ID で最後にアクセス
 されてから、一定時間たつと自動的に
 削除します。
2. ID は延々と増えるのか ? それとも再利用するのか
 管理用の識別番号を作る場合、番号が
 再利用するかどうか、増えつづけるのかという
 問題があります。
 IIS/ASP の場合、IIS をリスタートすると
 再利用する可能性があります。
3. ID のセキュリティの確保
 ID を他の人が利用すると、他人のデータに
 アクセスできる可能性があります。
 ID を大きな値にして、類推しにくくし、
 かつ、特定のIDは、特定のIPアドレスから
 のみ利用できるようにするなどの対応が
 必要です。

なお、画面間で値を保存する方法として、
隠しフォーム、Cookie、ASP 以外にも、
ウィンドウ、フレームを使う方法もあります。
ウィンドウ、フレームを、遷移する画面とは
別に用意しておき、保存しておきたい
データをブラウザ上のスクリプトから
ウィンドウ、フレームに書き込むという
方法です。

あと、GET、POST できるデータ量は、ブラウザ
および、ブウラザのバージョンや、
間に入っているProxyやファイアウォールに
よって、変わります。

以上、参考にしていただければと思います。

 
お礼コメント
rosa_kelly

お礼率 75% (3/4)

kawabataさん、ありがとうございます。まだ初期検討段階なので、ASPが使える環境を提案できるか分からないのですが、やはりWebアプリケーションサーバーを利用する方向で考えたほうが、自由度が高くなりそうですね。詳細に解説頂き、大変勉強になりました。今後共よろしくお願いします。
投稿日時 - 0000-00-00 00:00:00
関連するQ&A
-PR-
-PR-

その他の回答 (全1件)

  • 回答No.1

 隠しフォームの場合は、POSTを使えば理論上はいくらでもOKのはずですが、実際にはそんな何十キロバイトも渡したりするのはよくないようです。  またクッキーの場合は、上限はよく分かりませんが、せいぜいが1KB未満に抑えるのが慣例になっているようです。(4~5KB入れてるの見たことありますけど)  また、どれくらいの画面間でデータを渡しつづけられるかというのは、クッキーの場合は同一サーバー内のすべて ...続きを読む
 隠しフォームの場合は、POSTを使えば理論上はいくらでもOKのはずですが、実際にはそんな何十キロバイトも渡したりするのはよくないようです。
 またクッキーの場合は、上限はよく分かりませんが、せいぜいが1KB未満に抑えるのが慣例になっているようです。(4~5KB入れてるの見たことありますけど)

 また、どれくらいの画面間でデータを渡しつづけられるかというのは、クッキーの場合は同一サーバー内のすべて、隠しフォームは当然次の画面までです。

 で、ASPで作るのであればクッキーとか使うよりもSessionとApplicationを使ったほうがいいと思います。
 こいつらは考え方はクッキーと同じですが、サーバー側にデータを持ちます。
お礼コメント
rosa_kelly

お礼率 75% (3/4)

早速のご回答ありがとうございます!
数キロであれば、どちらでも問題ないということですね。

ASPを使ったほうが、運用上も良さそうなので、
もう少し検討してみたいと思います。

今後共よろしくお願い致します。
投稿日時 - 0000-00-00 00:00:00


このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


新大学生・新社会人のパソコンの悩みを解決!

いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ