0
我有一個應用程序,通過瀏覽器正常使用時工作正常。ASP.Net MVC Modelbinder&Request.Form是空的,即使多部分/ MIME發佈
當試圖記錄或回放JMeter腳本時,應用程序停止工作,並且某些頁面以空模型結束。我已經通過wireshark確認表單數據在這些請求中發佈。
我將工作請求的wireshark與失敗的請求進行了比較,差異很小。
的主要原因之一是本
工作:
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryyuuSWkmnnXJCTJzw
失敗:
Content-Type: multipart/form-data; boundary=kAbx249hddVWzlxpSVyEMxcpc9waTo; charset=UTF-8
邊界文本由JMeter的代理修改,和charset = UTF-8也被添加由代理。
我確認在實際的MIME數據中,兩種情況都使用了正確的邊界。
表單帖子中的所有其他標題,cookie,名稱都是完全相同的。
當我的行爲被擊中,該模型是空的(主要模型變量不爲空,但在該模型中的所有屬性的默認值)
在調試/即時窗口中,的Request.Form是空的。
? Request.Form
{}
[System.Web.HttpValueCollection]: {}
base: {}
AllKeys: {string[0]}
我可以使那些認爲他們會有幫助的wireshark捕獲可用。
這絕對是編碼。我捕獲了工作請求,添加了編碼,並且打破了。 顯然發送UTF-8編碼(不需要更改有效負載)會導致IIS/ASP.Net忽略表單發佈。 –