我需要發送陣列作為查詢引數,我這樣做
StringBuilder Ids = new StringBuilder();
for (int i = 0; i < array.Count; i )
{
Ids.Append(String.Format("&id[{0}]={1}", i, items[i].ID));
}
ifrDocuments.Attributes.Add("src", "Download.aspx?arrayCount=" array.Count Ids);
在此之后我有字串:
Download.aspx?arrayCount=8&id[0]=106066&id[1]=106065&id[2]=106007&id[3]=105284&id[4]=105283&id[5]=105235&id[6]=105070&id[7]=103671
它可以包含 100 個元素,在這種情況下我收到錯誤:
在此處輸入影像描述
也許我可以用另一種方式做到這一點?不是通過在查詢 qstring 中發送它。
uj5u.com熱心網友回復:
多個級別(瀏覽器、代理服務器等)的 URL 長度有限制。您可以更改 maxQueryString (*1),但如果您希望真實用戶使用您的系統,我不建議您這樣做。
看起來 downloads.aspx 是您的頁面。將所有這些 id 放在臨時存盤中 - (快取或資料庫)并將密鑰傳遞給請求中的這個新物體
*1:https ://blog.elmah.io/fix-max-url-and-query-string-length-with-web-config-and-iis/
uj5u.com熱心網友回復:
由于限制,QueryString 不是傳遞陣列的方法。如果您有端點,您應該考慮在 POST Body 中發送您的陣列。
問候
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/423444.html
標籤:
