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

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

成功執行 OnPost() 后 POST 返回 400 (RazorPages)

成功執行 OnPost() 后 POST 返回 400 (RazorPages)

RISEBY 2023-06-09 15:57:28
我在 asp.net 核心中使用 RazorPages。當我使用 jQuery/Ajax 創建對我的 RazorPage 的發布請求時,OnPost() 方法運行時沒有錯誤,并且響應狀態代碼設置為 200。HttpContext.Response.StatusCode = 200;在 Chrome 控制臺中,我的請求返回了錯誤代碼 400,其中包含消息“加載資源失敗”。指向錯誤源的鏈接將我帶到VM6.js 的第 38 行。類似的代碼適用于另一個 RazorPage,因此我認為它可能會嘗試呈現我的頁面 (.cshtml) 并出錯。我通過在加載 cshtml 文件時輸出到控制臺來證明這個理論是錯誤的,而在發出 POST 請求時我沒有得到這個輸出。這是用于提交我的表單的工作頁面和損壞頁面共享的 Javascript:$("[name|='form']").submit(function() {    var formData = $(this).serialize();    $.ajax({        type: "POST",        data: formData,        success: function() {            $("#success").toast("show");        },        error: function(xhr) {            if (xhr.status == 429) {                $("#ratelimit").toast("show");            } else {                $("#error").toast("show");            }        }    });    return false;});如何確保我的網絡服務器返回代碼 200 而不是 400?
查看完整描述

1 回答

?
達令說

TA貢獻1821條經驗 獲得超6個贊

要修復 400 錯誤,我需要在表單中包含 method="post"。這意味著包含驗證令牌并且不會引發錯誤。

因為我的頁面包含 C# 代碼,如果沒有事先調用 OnGet() 方法,它會拋出錯誤,這會在每次發布請求后導致 500 錯誤,盡管頁面沒有加載。

if(~~~ == null) return;在我的 cshtml 的頂部添加了它,它現在似乎可以工作了。


查看完整回答
反對 回復 2023-06-09
  • 1 回答
  • 0 關注
  • 382 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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