当前位置: 首页 > news >正文

技术问题汇总:前端怎么往后端传一个数组?

场景

现在一个专门负责复习算法的服务,筛选出了用户今天需要复习的笔记的ids,现在要调用笔记服务根据ids查询的接口。
请问复习服务怎么将ids发到笔记服务,笔记服务怎么接收。

思路

发的时候肯定是用字符串,接收的时候,用List接收到了就接收,接收不到就也用字符串,收到了再解析成数组。

参考代码

发送

// 提取需要复习的笔记 ID
List<Long> reviewNoteIds = reviewList.stream().map(NoteAttributeDTO::getNid).toList();
// 转换成逗号分隔的字符串
String idsStr = reviewNoteIds.stream().map(String::valueOf).collect(Collectors.joining(","));

feign:

// 根据ids查询笔记
@GetMapping("/api/note-service/note/findNotesByIds")
ResultData<List<NoteDTO>> findNotesByIds(@RequestParam("ids") String ids);

接收

用List直接接收

@GetMapping("/findNotesByIds")public ResultData<List<Note>> findNotesByIds(@RequestParam("ids") List<Long> ids) {if (ids == null || ids.isEmpty()) {return ResultData.failure(ResultCodeEnum.FAIL, "笔记 ID 不能为空");}List<Note> notes = noteService.findNotesByIds(ids);return ResultData.success(notes);}

先接收成字符串,再解析

// 次接口仅用来测试前端怎么给后端传递一个数组@GetMapping("/arrayTest")public ResultData<List<Long>> arrayTest(@RequestParam("ids") String ids) {// 逗号分隔解析List<Long> idList = Arrays.stream(ids.split(",")).map(Long::parseLong).collect(Collectors.toList());System.out.println(idList);return ResultData.success(idList);}

总结

远程调用要传数组,传的一方肯定用字符串。收的一方看能用List接收到,就用List,不能用List就也用字符串接收。
额,别的方法还没试过,可能还有更简单的方法,不过我感觉这种暂时够用了,顶多传的时候,再粘几行代码就ok了。

http://www.lryc.cn/news/545127.html

相关文章:

  • 【03】STM32F407 HAL 库框架设计学习
  • 智能图像处理平台:图像处理配置类
  • 【图文详解】什么是微服务?什么是SpringCloud?
  • 基于ssm的校园跑腿管理系统+vue
  • 5个GitHub热点开源项目!!
  • docker通用技术介绍
  • #渗透测试#批量漏洞挖掘#某图创图书馆集群管理系统updOpuserPw SQL注入(CVE-2021-44321)
  • 智能合约安全 | 合约无效化攻击
  • RabbitMQ 的介绍与使用
  • 【手撕算法】K-Means聚类全解析:从数学推导到图像分割实战
  • 【SQL技术】不同数据库引擎 SQL 优化方案剖析
  • RabbitMQ系列(二)基本概念之Publisher
  • OAK相机的抗震性测试
  • 2025最新Nginx高频面试题
  • 【Kubernetes】API server 限流 之 maxinflight.go
  • 推荐算法工程师的技术图谱和学习路径
  • Milvus高性能向量数据库与大模型结合
  • 轮式机器人在复杂地形中如何选择合适的全局路径规划算法?
  • Metal学习笔记九:光照基础
  • 【字符串】最长公共前缀 最长回文子串
  • Linux提权之详细总结版(完结)
  • week 3 - More on Collections - Lecture 3
  • Pwntools 的详细介绍、安装指南、配置说明
  • PLC(电力载波通信)网络机制介绍
  • Qt监控系统远程回放/录像文件远程下载/录像文件打上水印/批量多线程极速下载
  • 自学微信小程序的第八天
  • 【java】@Transactional导致@DS注解切换数据源失效
  • 003 SpringBoot集成Kafka操作
  • Android SystemUI开发(一)
  • C#贪心算法