最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java?axios與spring前后端分離傳參規(guī)范總結(jié)

 更新時間:2022年08月01日 08:26:34   作者:字母哥哥???????  
這篇文章主要介紹了Java?axios與spring前后端分離傳參規(guī)范總結(jié),文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的朋友可以參考一下

前言

前后端分離開發(fā)的場景下,開發(fā)人員的工作內(nèi)容更加專注與專業(yè),但是也產(chǎn)生了一些額外的溝通成本。比如:本文中為大家說明的前后端參數(shù)傳遞與接受方法。本文主要是面對前端使用axios,后端使用Spring進行參數(shù)接受的情況進行說明。在使用spring的時候,與前端配合開發(fā),容易出現(xiàn)傳參歧義的2個注解是

  • @RequestParam注解,默認接收Content-Type: application/x-www-form-urlencoded編碼格式的數(shù)據(jù)
  • @RequestBody注解,默認接收JSON類型格式的數(shù)據(jù)。

很多的文章列舉出參數(shù)傳遞失敗的問題解決方案,在我看來都不夠全面。在此我給大家總結(jié)一下

一、@RequestParam注解對應的axios傳參方法

以下面的這段Spring java代碼為例,接口使用POST協(xié)議,需要接受的參數(shù)分別是tsCode、indexCols、table。針對這個Spring的HTTP接口,axios該如何傳參?有幾種方法?我們來一一介紹。

@PostMapping("/line")
public List<? extends BaseEntity> commonEChart(@RequestParam String tsCode,
                                     @RequestParam String indexCols,
                                     @RequestParam String table){

1.1.params傳參(推薦)

使用axios實例的params進行傳參,就會將params參數(shù)格式化為x-www-form-urlencoded的格式,與后端參數(shù)一一對應即可傳參成功。這也是我向大家推薦的傳參方法!

return request({
    url: '/chart/line',
    method: 'post',
    params: {   //注意這里的key是params
        tsCode,
        indexCols,
        table
    }
})

1.2.FormData傳參

還可以使用js的FormData對象進行參數(shù)格式化,同樣可以在Spring后端正確的使用@RequestParam注解進行參數(shù)接收。

let params = new FormData();
params.append('tsCode', tsCode);
params.append('indexCols', indexCols);
params.append('table', table);
return request({
    url: '/chart/line',
    method: 'post',
    data: params   //注意這里的key是data
})

1.3.qs.stringfy傳參

還可以使用qs.stringfy進行參數(shù)格式化,同樣可以在Spring后端正確的使用@RequestParam注解進行參數(shù)接收。

import qs from "qs";

return request({
    url: '/chart/line',
    method: 'post',
    data: qs.stringify({    //注意這里的key是data
        tsCode,
        indexCols,
        table
    })
})

需要注意的是使用這種方法,需要手動設置header(Content-Type)

const service = axios.create({
    headers: {
        "Content-Type": "application/x-www-form-urlencoded"
    }
});

二、@RequestBody的axios傳參方法

java代碼部分如下所示,DemoModel類是一個實體類,包含名稱tsCode,indexCols,table三個字符串成員變量。接收到的JSON格式參數(shù)會自動為demo對象的成員變量賦值。

@PostMapping("/line")
public List<? extends BaseEntity> commonEChart(@RequestBody DemoModel demo){

@RequestBody注解,默認接收JSON類型格式的數(shù)據(jù)。在axios中默認data傳參就會默認使用JSON數(shù)據(jù)格式,所以不用額外的特殊處理。

return request({
    url: '/chart/line',
    method: 'post',
    data: {    //注意這里的key是data
        tsCode,
        indexCols,
        table
    }
})

到此這篇關于Java axios與spring前后端分離傳參規(guī)范總結(jié)的文章就介紹到這了,更多相關Java axios與spring內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Java抽象類和普通類區(qū)別、 數(shù)組跟List的區(qū)別解析

    Java抽象類和普通類區(qū)別、 數(shù)組跟List的區(qū)別解析

    這篇文章主要介紹了Java抽象類和普通類區(qū)別、 數(shù)組跟List的區(qū)別,在這里需要注意List是一個接口,不能直接實例化,需要使用具體的實現(xiàn)類來創(chuàng)建對象,本文結(jié)合示例代碼介紹的非常詳細,需要的朋友參考下吧
    2023-09-09
  • java servlet手機app訪問接口(三)高德地圖云存儲及檢索

    java servlet手機app訪問接口(三)高德地圖云存儲及檢索

    這篇文章主要為大家詳細介紹了java servlet手機app訪問接口(三),高德地圖云存儲及檢索,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • MyBatisPlus條件構造器圖文實例詳解

    MyBatisPlus條件構造器圖文實例詳解

    這篇文章主要介紹了MyBatisPlus條件構造器,了解內(nèi)部原理是為了幫助我們做擴展,同時也是驗證了一個人的學習能力,如果你想讓自己的職業(yè)道路更上一層樓,這些底層的東西你是必須要會的
    2023-01-01
  • Java基于Swing實現(xiàn)的打獵射擊游戲代碼

    Java基于Swing實現(xiàn)的打獵射擊游戲代碼

    這篇文章主要介紹了Java基于Swing實現(xiàn)的打獵射擊游戲代碼,包含完整的游戲事件處理與邏輯流程控制,具有不錯的參考借鑒價值,需要的朋友可以參考下
    2014-11-11
  • Spring Security在標準登錄表單中添加一個額外的字段

    Spring Security在標準登錄表單中添加一個額外的字段

    這篇文章主要介紹了Spring Security在標準登錄表單中添加一個額外的字段,我們將重點關注兩種不同的方法,以展示框架的多功能性以及我們可以使用它的靈活方式。 需要的朋友可以參考下
    2019-05-05
  • JVM代碼運行邏輯解讀

    JVM代碼運行邏輯解讀

    這篇文章主要介紹了JVM代碼運行邏輯,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-04-04
  • Springboot?手動分頁查詢分批批量插入數(shù)據(jù)的實現(xiàn)流程

    Springboot?手動分頁查詢分批批量插入數(shù)據(jù)的實現(xiàn)流程

    這篇文章主要介紹了Springboot?手動分頁查詢分批批量插入數(shù)據(jù)的實現(xiàn)流程,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-07-07
  • Kotlin lateinit與by lazy案例詳解

    Kotlin lateinit與by lazy案例詳解

    這篇文章主要介紹了Kotlin lateinit與by lazy案例詳解,本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-09-09
  • java8新特性之接口默認方法示例詳解

    java8新特性之接口默認方法示例詳解

    這篇文章主要給大家介紹了關于java8新特性之接口默認方法的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用java8具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2020-08-08
  • SpringBoot集成JWT實現(xiàn)Token登錄驗證的示例代碼

    SpringBoot集成JWT實現(xiàn)Token登錄驗證的示例代碼

    隨著技術的發(fā)展,分布式web應用的普及,通過session管理用戶登錄狀態(tài)成本越來越高,因此慢慢發(fā)展成為token的方式做登錄身份校驗,本文就來介紹一下SpringBoot集成JWT實現(xiàn)Token登錄驗證的示例代碼,感興趣的可以了解一下
    2023-12-12

最新評論

友谊县| 安阳县| 潞西市| 临洮县| 攀枝花市| 靖安县| 舟曲县| 宜黄县| 萨嘎县| 余干县| 河曲县| 谷城县| 长泰县| 屯门区| 屏东县| 志丹县| 中山市| 靖安县| 久治县| 济宁市| 响水县| 甘孜| 西昌市| 井陉县| 水城县| 泾阳县| 石狮市| 青阳县| 阳东县| 周口市| 巴东县| 龙南县| 白山市| 伊金霍洛旗| 敖汉旗| 隆德县| 平阴县| 文水县| 安多县| 靖远县| 澜沧|