ホームページ Java &#&チュートリアル フロントエンドがデータをバックエンドに渡すと、バックエンドは取得したデータがnullであることを表示します。それを解決する方法は?

フロントエンドがデータをバックエンドに渡すと、バックエンドは取得したデータがnullであることを表示します。それを解決する方法は?

Apr 19, 2025 pm 09:15 PM
usdt red

フロントエンドがデータをバックエンドに渡すと、バックエンドは取得したデータがnullであることを表示します。それを解決する方法は?

問題の説明: Ruoyi個別のフレームワークを使用する開発プロセス中、フロントエンドはPOSTリクエストを使用してデータをバックエンドに渡すが、バックエンドはヌル値を受信します。

フロントエンドコード:

 //注文ステータスエクスポート機能updateOderStatus(id、status)を変更する{
    const data = {
        ID、
        状態
    }
    リクエストを返す({
        url: "/business/orderfo/updatestate"、
        方法:「投稿」、
        データ:データ
    })
}
ログイン後にコピー

フロントエンドリクエストデータのスクリーンショット:(フロントエンドリクエストデータのスクリーンショットはこちらに含める必要があります)

バックエンドコード(元のコード):

 @Apioperation( "Order Management-Modify Order Status"))
@apiimplicitparams({
    @apiimplicitparam(name = "id"、value = "プライマリキーID"、必須= true、datAtype = "integer")、
    @apiimplicitparam(name = "status"、value = "status 0 end it 1"、必須= true、dataType = "integer")
})
@postmapping( "/updatestate")
public ajaxResult updatestate(整数ID、整数ステータス){
    System.out.println( "注文番号を変更:" id "\ n");
    System.out.println( "順序ステータスを変更:"ステータス "\ n");
    // ...(他のコード)
}
ログイン後にコピー

バックエンド印刷の結果のスクリーンショット:(これには、バックエンド印刷の結果のスクリーンショットが含まれ、IDとステータスをnullとして表示する必要があります)

問題分析:バックエンドはInteger id, Integer statusを使用してパラメーターを受信します。 POSTリクエストの処理の場合、Spring Bootは、デフォルトでこれらのパラメーターにリクエスト本文のJSONデータを正しく解析できません。

解決策:バックエンドコードを変更し、 @RequestBodyアノテーションを使用して、リクエスト本体のJSONデータをオブジェクトにバインドします。

変更されたバックエンドコード:

 @Apioperation( "Order Management-Modify Order Status"))
@postmapping( "/updatestate")
public ajaxresult updatestate(@requestbody orderstatusdto orderstatusdto){
    system.out.println( "注文番号を変更:" orderstatusdto.getid() "\ n");
    System.out.println( "順序ステータスを変更:" orderstatusdto.getStatus() "\ n");

    if(orderstatusdto.getid()== null){
        ajaxresult.errorを返します( "プライマリキーIDを入力");
    }
    if(orderstatusdto.getStatus()== null){
        ajaxresult.error( "入力ステータス");
    }

    borderinfo borderinfo = new borderinfo();
    borderinfo.setid(orderstatusdto.getid());
    borderinfo.setstatus(orderstatusdto.getStatus());
    system.out.println( "順序ステータスを変更:" borderinfo.toString() "\ n");
    orderinfoservice.update(borderinfo);
    ajaxresult.success()を返します。
}
ログイン後にコピー

Orderstatusdtoクラスを追加:

パブリッククラスorderstatusdto {
    プライベート整数ID;
    プライベート整数ステータス。

    //ゲッターとセッター
}
ログイン後にコピー

@RequestBody Annotationを使用し、 OrderStatusDTOクラスを作成してフロントエンドで渡されたJSONデータを受信することにより、バックエンドはデータを正しく解析して、 NULL値の問題を回避できます。フロントエンドから送信されたJSONデータが、 OrderStatusDTOのフィールド名と一致していることを確認してください。同時に、フロントエンドrequest関数がContent-Type: application/jsonなどのheadersを正しく設定しているかどうかを確認します。

このソリューションは、元の@RequestParamソリューションよりもRESTFUL APIの設計仕様に沿ったものであり、POSTリクエストのボディデータをより明確に処理します。

以上がフロントエンドがデータをバックエンドに渡すと、バックエンドは取得したデータがnullであることを表示します。それを解決する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Redisキャッシュソリューションを使用して、製品ランキングリストの要件を効率的に実現する方法は? Redisキャッシュソリューションを使用して、製品ランキングリストの要件を効率的に実現する方法は? Apr 19, 2025 pm 11:36 PM

Redisキャッシュソリューションは、製品ランキングリストの要件をどのように実現しますか?開発プロセス中に、多くの場合、ランキングの要件に対処する必要があります。

ouyi ouyi ouyi ouix ouyiグローバルステーションログインホームページ ouyi ouyi ouyi ouix ouyiグローバルステーションログインホームページ Apr 21, 2025 pm 11:57 PM

OUYI OKXは、世界をリードするデジタル資産取引プラットフォームです。 1)その開発履歴が含まれます。2017年に開始され、中国名「OUYI」は2021年に発売され、2022年にOUYI OKXと改名されます。 3)プラットフォームの特別な機能には、マーケットデータサービスとリスク制御システムが含まれます。 4)コアの利点には、技術的な強さ、セキュリティシステム、サービスサポート、市場のカバレッジが含まれます。

マルチノード環境では、Spring Bootの@Scheduledタイミングタスクが1つのノードでのみ実行されることを確認する方法は? マルチノード環境では、Spring Bootの@Scheduledタイミングタスクが1つのノードでのみ実行されることを確認する方法は? Apr 19, 2025 pm 10:57 PM

マルチノード環境でのスプリングブートタイミングタスクの最適化ソリューションは、春の開発です...

デジタル通貨を到着するのにどれくらい時間がかかりますか?推奨される主流のデジタル通貨充電プラットフォーム デジタル通貨を到着するのにどれくらい時間がかかりますか?推奨される主流のデジタル通貨充電プラットフォーム Apr 21, 2025 pm 08:00 PM

デジタル通貨の充電の時間は、方法によって異なります。1。銀行の譲渡には通常1〜3営業日かかります。 2。数分から数時間以内にクレジットカードまたはサードパーティの支払いプラットフォームの充電。 3.デジタル通貨移転の充電時間は、通常、ブロックチェーンの確認時間に基づいて10分から1時間ですが、ネットワークの輻輳などの要因により遅延する場合があります。

量子チェーンを取引する方法 量子チェーンを取引する方法 Apr 21, 2025 pm 11:42 PM

Quantum Chain(QTUM)トランザクションプロセスには、予備準備、購入、販売の3つの段階が含まれます。 1。準備:準拠した交換を選択し、アカウントを登録し、身元確認を実行し、ウォレットをセットアップします。 2。量子チェーンの購入:資金を充電し、取引ペアを見つけ、注文または注文を制限する)、取引を確認します。 3.量子チェーンの販売:取引ページを入力し、取引ペアと注文タイプ(市場注文または制限順序)を選択し、取引を確認し、現金を引き出します。

バッチクエリにRediStemplateを使用するときに、なぜ返品値が空になるのですか? バッチクエリにRediStemplateを使用するときに、なぜ返品値が空になるのですか? Apr 19, 2025 pm 10:15 PM

バッチクエリにRediStemplateを使用するときに、なぜ返品値が空になるのですか?バッチクエリ操作にRedistemplateを使用する場合、返された結果に遭遇する可能性があります...

最古の仮想通貨のランキングに関する最新の更新 最古の仮想通貨のランキングに関する最新の更新 Apr 22, 2025 am 07:18 AM

仮想通貨の「最古」のランキングは次のとおりです。1。Bitcoin(BTC)は、2009年1月3日に発行され、最初の分散型デジタル通貨です。 2。2011年10月7日にリリースされたLitecoin(LTC)は、「ビットコインの軽量バージョン」として知られています。 3。2011年に発行されたRipple(XRP)は、国境を越えた支払い用に設計されています。 4。2013年12月6日に発行されたDogecoin(Doge)は、Litecoinコードに基づいた「Meme Coin」です。 5。2015年7月30日にリリースされたEthereum(ETH)は、スマートコントラクトをサポートする最初のプラットフォームです。 6。2014年に発行されたTether(USDT)は、米ドル1:1に固定された最初のスタブコインです。 7。アダ、

ハイブリッドブロックチェーン取引プラットフォームとは何ですか? ハイブリッドブロックチェーン取引プラットフォームとは何ですか? Apr 21, 2025 pm 11:36 PM

暗号通貨交換を選択するための提案:1。流動性の要件については、優先度は、その順序の深さと強力なボラティリティ抵抗のため、Binance、gate.ioまたはokxです。 2。コンプライアンスとセキュリティ、Coinbase、Kraken、Geminiには厳格な規制の承認があります。 3.革新的な機能、Kucoinのソフトステーキング、Bybitのデリバティブデザインは、上級ユーザーに適しています。

See all articles