none
画面間で受け渡す大量(500バイト程度)の文字列を受け渡したい。 RRS feed

  • 質問

  • いつもお世話になっております。

    VB2008でASP.NETの開発をしています。

    検索画面(A.aspx)とその結果を表示する画面(B.aspx)があります。
    検索画面の検索条件の選択が豊富なため、
    画面間で受け渡す情報が500バイト以上になりそうです。
    (もっと多いかもしれません。)

    その場合に、B.aspxに文字列をどのように渡したら良いかと思い、
    質問させて頂きました。

    B.aspxでF5ボタンを押下したり、A.aspx⇔B.aspxで
    進む、戻る動作で問題なく動作するようにしたいと思っています。

    QueryStringで受け渡すのが良いのだろうかと思っていましたが、
    バイト数が多い場合に、受け渡しに制限がないだろうかと不安に思っております。

    このような場合、どのような方法で文字列を受け渡すのが良いのでしょうか?
    アドバイス頂けましたら、とても助かります。

    ぜひご回答よろしくお願い致します。

    2009年8月17日 20:25

回答

  • セッション変数 を使用するといいでしょう。ページをまたぐセッションという単位でデータを記憶できます。

    query stringだと、いったんWebブラウザに渡されそれがWebサーバに送り返されることになります。その間、Webブラウザが悪意を持って改変してしまう可能性もあるので気をつけてください。
    • 回答としてマーク コンドル 2009年8月18日 0:18
    2009年8月17日 22:12

すべての返信

  • セッション変数 を使用するといいでしょう。ページをまたぐセッションという単位でデータを記憶できます。

    query stringだと、いったんWebブラウザに渡されそれがWebサーバに送り返されることになります。その間、Webブラウザが悪意を持って改変してしまう可能性もあるので気をつけてください。
    • 回答としてマーク コンドル 2009年8月18日 0:18
    2009年8月17日 22:12
  • 佐祐理様

    ご回答ありがとうございました。
    QueryStringだとURLを変更されると、
    受け渡したい情報が改変されてしまうということでしょうか?
    確かにその通りですね。
    そのような危険を考えないためにも、セッション変数を使った方が
    安全そうですね。

    受け渡す文字数にも問題がなさそうですので、
    セッション変数を使う方向で検討させて頂きます。

    ありがとうございました。
    2009年8月18日 0:17