私はASPを持っています。NET MVCの設定、そして私はreportgeneratorを構築しています。私はJQueryテーブルを出力しているので、ユーザーはPDFとして取得する前にそれをソートして並べ替えることができます。私のPDFコンポーネントは.NETベースであるため、AJAXを介して変更したテーブルをサーバーに送り返す必要があります。
問題は、URIが最大と同じくらい大きくなる可能性があることです。サーバーに414のステータス(Request-URI Too Long)で応答させる、100k文字。 IISでは、数千文字を超えるURIは許可されていないようです。
それほど大きいURLを作成するのは奇妙に思えることを認めているので、何かが足りない可能性があると思います。データをサーバーに送信する別の方法はありますか、それとも別の方法でこれを解決することが可能ですか?
回答:
回答№1は5数百文字を超えるデータを送信するための推奨される方法は、GETの代わりにHTTP POSTを使用することです。 GETはすべてのデータをキーと値のペアとしてURIに追加します(例: ?foo=bar&baz=blah
一方、POSTはデータを要求に入れます。体。リクエスト全体の長さにも制限がありますが、それはURIに課される制限よりはるかに大きいです。 jQuery側では、GETからPOSTへの切り替えは簡単です - 詳細はjQuery.ajax()のドキュメントを読んでください。 サーバー側では、パラメータがGETではなくPOSTから読み込まれるように変更する必要があるかもしれませんが、ほとんどの場合、これも比較的簡単です。
回答№2については2
あなたの質問の鍵は 役職。必要がある POST
サーバーに戻ります。
$.post(url, [data], [success(data, textStatus, XMLHttpRequest)], [dataType]);