java - 如何在@RequestParam 后端的服务调用中添加参数?
问题描述
如果我有类似的东西
@GetMapping(value = "/list")
public ResponseEntity<MyDTO> findStatusPerEC(@RequestParam final List<Long> numbersEC)
如何在前端的网址中添加 numbersEC?这是查询参数吗?
我知道这是一个没有查询参数的旧调用,数据只是一个数字(长)
return this.http.get<any>(URL_API + '/simulator/status/' + data);
但现在我必须发送一个长值列表......你能帮我吗?
解决方案
return this.http.get<any>(URL_API + '/simulator/status/' + data);
由于您提到data
的只是一种long
类型,因此您在发出上述请求时在这里指的是PathVariable它与RequestParam略有不同。
- 路径变量的语法如下:
/simulator/status/:statusID
其中 statusID 是动态的,从 URI 中提取值。 - 请求参数具有语法:
?arg=val&arg2=val2
etc... 并从请求查询字符串中提取值。
解决方案
要回答您的问题,将数组作为请求参数发送,您可以这样做:
?myparam=myValue1&myparam=myValue2&myparam=myValue3
如您所见,上面myparam
是不变的,并且值是可变的,因此列表数据结构中的数据。
因此,当您提出请求时,它看起来类似于:
角/Javascript
return this.http.get<any>(URL_API + '/list' + '?myparam=myValue1&myparam=myValue2&myparam=myValue3');
爪哇
@GetMapping(value = "/list")
public ResponseEntity<MyDTO> findStatusPerEC(@RequestParam final List<Long> numbersEC)
我希望这有帮助。
推荐阅读
- python - Python 3.8 错误:ModuleNotFoundError:没有名为“pyttsx3”的模块
- multithreading - RTOS可以vTaskSuspend vTaskResume一个线程吗?
- typescript - NativeScript WebRTC / TNSRTC - 无法获取 remoteStream 视频
- javascript - 用 express 发回 CSV
- asp.net - asp.net core razor pages脚手架错误get_NullableAnnotation
- reactjs - TypeScript 抱怨组件缺少由 redux 注入的属性
- python - Seaborn Lineplot 混淆日期和数据
- html - 在上面显示一个 DOM 元素
- php - 如何同时使用 Laravel-DomPDF 和 Laravel-Snappy
- tensorflow - 如何安装 libcusolver.so.11