作業している製品のASP.NET/Castle Monorailサイトに小さな(またはそれほど小さくない)問題があります。これはかなりレガシーなシステムであり(私の時代よりかなり前に作成されました)、クエリ文字列にかなりの量の情報を含むGETリクエストを使用します。最近、クエリ文字列の長さの制限に遭遇しました。サーバーに転送する必要のあるデータの量については、データを一時的にCookieに保存することも妥当ではありません(Cookieあたりの4096バイトの制限をすでにはるかに超えています。多くのCookieを設定するため、ドメインごとのCookieの制限に近いか、制限に達している可能性があります。)
POST以外に(場合によってはPOSTリクエストに変更できる場合もありますが、すべてではない可能性があります)、この問題を解決できる代替手段があるかどうか疑問に思っています。StackOverflowの他の誰かが同様の問題に遭遇し、いくつかの魔法の解決策があることを願っています(つまり、javascriptでデータを圧縮し、base64としてエンコードし、単一のクエリ文字列アイテムに渡しますか?圧縮できるライブラリがあるかどうかはわかりません.NET 3.5の組み込み圧縮クラスと互換性のある方法でJavaScriptを使用したデータ。)
アップデート:
私が選んだ解決策は、一時的なコントローラーにPOSTすることでした。この一時コントローラーは、大量のデータのリストをプルし、共有セッションにスタックし(本番サーバーは、スティッキーセッション/ IPを使用しない大規模なマルチバンクサーバーファームにあります)、実際のコントローラーに対してGETを実行しました。共有セッションからのデータ。最もパフォーマンスの高いソリューションではありませんが、問題は解決しました。