亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用 XmlHttpRequest 發送 FormData 并映射到視圖模型屬性

如何使用 XmlHttpRequest 發送 FormData 并映射到視圖模型屬性

C#
鳳凰求蠱 2023-04-16 09:53:47
我正在嘗試使用 XmlHttpRequest 將 FormData 對象中的一些值發送到控制器。問題是當我在本地 (localhost) 執行此操作時,數據會正確映射到 ViewModel 的屬性,并且一切正常。當我在我們的生產環境中嘗試這樣做時,似乎這些值沒有映射到 ViewModel。(發布發生在同一個 url 上)- 是否有任何我不知道的安全檢查?- 有沒有人有任何建議做什么或去哪里看?JS:var payload = new FormData();payload.append('TestTitle', $('#TestTitle').text());payload.append('TestId', $('#TestId').val());payload.append('TestGuid', $('#TestGuid').val());var xhr = new XMLHttpRequest();xhr.addEventListener('readystatechange', onStateChange);xhr.open('POST', '/test/savetest?rand=' + Math.random());xhr.send(payload);------C#:[HttpPost]public ActionResult SaveTest(TestViewModel model){   if (ModelState.IsValid)   {       //do stuff   }   return new JsonResult() { Data = new { Success = false }, JsonRequestBehavior = JsonRequestBehavior.AllowGet };}
查看完整描述

2 回答

?
MMMHUHU

TA貢獻1834條經驗 獲得超8個贊

經過一番調查后,我發現 POST 由于安全設置而被阻止。



查看完整回答
反對 回復 2023-04-16
?
莫回無

TA貢獻1865條經驗 獲得超7個贊

試試這個解決方案:


JS:


    var payload = new FormData();

    payload.append('TestTitle', $('#TestTitle').text());

    payload.append('TestId', $('#TestId').val());

    payload.append('TestGuid', $('#TestGuid').val());


    var xhr = new XMLHttpRequest();

    xhr.addEventListener('readystatechange', onStateChange);

    xhr.open('POST', '/test/savetest?rand=' + Math.random(),false);

xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

    xhr.send(payload);


    ------

    C#:

    [HttpPost]

    public ActionResult SaveTest(TestViewModel model)

    {

       if (ModelState.IsValid)

       {

           //do stuff

       }

       return new JsonResult() { Data = new { Success = false }, JsonRequestBehavior = JsonRequestBehavior.AllowGet };

    }


查看完整回答
反對 回復 2023-04-16
  • 2 回答
  • 0 關注
  • 176 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號