您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關如何在SpringBoot后臺接收前臺傳遞的對象,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
$.ajax({ url: "后臺的方式", async: false, type: "POST", dataType : "json", data: JSON.stringify(formParamObj), contentType:'application/json;charset=utf-8', success: function (data) { if (data.isSuccess) { //成功處理方式 } else if ("403" == data) { //失敗方式處理 } } });
axios方式:
let params = { key1:value1, key2:value2 } axios.post/get(url,params).then(res=>{ //處理結果 })
在方法的參數前面添加注解@RequestBody就可以解決
@PostMapper("/xxx/xxxx") public List getProgramList(@RequestBody Program program){ System.out.println(program); return null; }
落地測試:
可以通過postman工具進行測試
補充:關于SpringBoot自定義注解(解決post接收String參數 null(前臺傳遞json格式))
今天遇到個問題,接口方面的,請求參數如下圖為json格式(測試工具使用google的插件postman)
后臺用字符串去接收為null
1.使用實體接收(一個參數,感覺沒必要)
2.使用map接收(參數不清晰,不想用)
3.自定義注解(本文采用)
第一步:
創建兩個類代碼如下:
package com.annotation; import java.lang.annotation.Documented; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; @Target(ElementType.PARAMETER) @Retention(RetentionPolicy.RUNTIME) @Documented public @interface RequestJson { String value(); }
package com.annotation; import java.io.BufferedReader; import javax.servlet.http.HttpServletRequest; import org.springframework.core.MethodParameter; import org.springframework.web.bind.support.WebDataBinderFactory; import org.springframework.web.context.request.NativeWebRequest; import org.springframework.web.method.support.HandlerMethodArgumentResolver; import org.springframework.web.method.support.ModelAndViewContainer; import com.alibaba.fastjson.JSONObject; public class RequestJsonHandlerMethodArgumentResolver implements HandlerMethodArgumentResolver { @Override public boolean supportsParameter(MethodParameter parameter) { return parameter.hasParameterAnnotation(RequestJson.class); } @Override public Object resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory) throws Exception { RequestJson requestJson = parameter.getParameterAnnotation(RequestJson.class); HttpServletRequest request = webRequest.getNativeRequest(HttpServletRequest.class); BufferedReader reader = request.getReader(); StringBuilder sb = new StringBuilder(); char[] buf = new char[1024]; int rd; while ((rd = reader.read(buf)) != -1) { sb.append(buf, 0, rd); } JSONObject jsonObject = JSONObject.parseObject(sb.toString()); String value = requestJson.value(); return jsonObject.get(value); } }
第二步:啟動類添加如下代碼
第三步:后臺請求(使用下圖方式接受就可以了)
上述就是小編為大家分享的如何在SpringBoot后臺接收前臺傳遞的對象了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。