1. ホーム
  2. ajax

リソースの読み込みに失敗しました:サーバーはステータス 400 (Bad Request) で応答しました。

2022-02-23 13:13:01

ajax リクエストに失敗しました。 リソースの読み込みに失敗しました: サーバーはステータス 400 (Bad Request) で応答しました。


一般的に、このエラーの原因は2つあります。1. リクエストの URL が間違っている 2. フロントエンドとバックエンドのデータ形式が一致していない。


この問題が発生した場合、まず、ajaxリクエストURLが正しいかどうか、フロントエンドのajaxリクエストURLがバックエンドの設定と一致しているかどうかを確認します。

$.ajax({
        url: SUBSYSTEM_APP_NAME + "reportsetting/saveReportSetting", the
        ......
});





リクエストを受信するバックエンド。

@RequestMapping(value = "saveReportSetting", method = RequestMethod.POST)





urlが正しく設定されている場合、フォアグラウンドで渡されたデータのフォーマットがバックグラウンドで受信したデータのフォーマットと同じであることを確認する必要があります。

$.ajax({   
      url: SUBSYSTEM_APP_NAME + "reportsetting/saveReportSetting".
      ...
      data: JSON.stringify(getAllData()),
      ...
});

var getAllData = function () {

    return {
        id: $idHidden.val(),
        name: $name.val(),
        reportTemplate: {id: $reportTemplate.val()},
        active: true,
        weeklyGenerationTime: $weeklyGenerationTime.val(),
        startTime: $startTime.val(),
        endTime: $endTime.val(),
        reportStatisticsType: $reportStatisticsType.val(),
        fileType: $fileType.val(),
        parametersMap: getParameters(),
        sender: $sender.val(),
        password: $password.val(),
        contacts: getContactIds($contactsPeopleTable)
    };
}; 
@RequestMapping(value = "saveReportSetting", method = RequestMethod.POST)
@ResponseBody
public JsonResult saveReportSetting(SessionInfo sessionInfo, @RequestBody ReportSetting reportSetting)
            throws IOException 




@RequestMapping(value = "saveReportSetting", method = RequestMethod.POST)
@ResponseBody
public JsonResult saveReportSetting(SessionInfo sessionInfo, @RequestBody ReportSetting reportSetting)
            throws IOException 


上記のコードは、関数 getAllData が返すデータ構造が ReportSetting のデータ構造と一致する必要があることを示しています。modクラスが修正されたとき、関係するデータ構造がそれに応じて変更されるべきかどうかを確認する必要があります。

また、モデルクラスに新しいプロパティを追加する場合は、ゲッターとセッターを追加し、クラスにはデフォルトのコンストラクタを持たせる必要があります。