axios发送数据的几种方式

axios 发送数据的几种方式

1、最简单的方式是将参数直接拼接在 URL 上,这通常用于传递少量的数据,例如资源的 ID。

javascript 复制代码
const id = 12;
axios.delete(`https://api.example.com/${id}`)
  .then(response => {
    console.log('Resource deleted successfully:', response.data);
  })
  .catch(error => {
    console.error('Error deleting resource:', error);
  });

springboot 后端参数的获取:

java 复制代码
    /**
     *  发送数据的请求的url:
                http://localhost:8090/building/10/3
         请求方式: DELETE
     * @param id
     * @return
     */
    @DeleteMapping("/{id}")
    public String deleteBuilding(@PathVariable("id") int id){
        System.out.println("id = " + id);
        return "success";
    }

2. 使用 params 参数传递参数

javascript 复制代码
axios.delete('https://api.example.com', {params:{id:12}})
  .then(response => {
    console.log('Resource deleted successfully:', response.data);
  })
  .catch(error => {
    console.error('Error deleting resource:', error);
  });
缺陷:
  1、参数都在url上 大小有限制
  2、url可以直接查看、存在不安全

springboot 后端参数获取:

java 复制代码
    /**
     *    发送请求的路径:  http://localhost:8090/building?id=10
     *        参数在url上面 键值对
     *     直接方法上面的参数的名称和key保持一致就可以 
     * @param id
     * @return
     */
    @DeleteMapping()
    public String deleteBuilding(int id){
        System.out.println("id = " + id);
        return "success";
    }

3. 使用 data 参数传递请求体数据

javascript 复制代码
const requestData = { id: 123, name: 'zs' };
axios.delete('https://api.example.com', { data: requestData })
  .then(response => {
    console.log('Resource deleted successfully:', response.data);
  })
  .catch(error => {
    console.error('Error deleting resource:', error);
  });

springboot 后端参数获取:

java 复制代码
    /**
     *    发送请求的路径:  http://localhost:8090/building
     *         请求体的数据: {id:1,name:"zs"}
     *     发送数据过来的是json格式:
     *         把前端json对象转成json字符串、把json字符串转成 javaBean
     *      获取参数的时候:
     *         1、创建一个javabean对象
     *         2、使用注解的方式 @RequestBody 进行自动转换
     *
     * @param id
     * @return
     */
    @DeleteMapping()
    public String deleteBuilding(@RequestBody User user){
        System.out.println("user = " + user);
        return "success";
    }
相关推荐
梁云亮几秒前
Spring Boot + Thymeleaf 防重复提交
spring boot·防抖·防重复提交
XMYX-07 小时前
Spring Boot + Prometheus 实现应用监控(基于 Actuator 和 Micrometer)
spring boot·后端·prometheus
@yanyu6668 小时前
springboot实现查询学生
java·spring boot·后端
酷爱码9 小时前
Spring Boot项目中JSON解析库的深度解析与应用实践
spring boot·后端·json
java干货10 小时前
虚拟线程与消息队列:Spring Boot 3.5 中异步架构的演进与选择
spring boot·后端·架构
武昌库里写JAVA13 小时前
iview Switch Tabs TabPane 使用提示Maximum call stack size exceeded堆栈溢出
java·开发语言·spring boot·学习·课程设计
小白杨树树13 小时前
【WebSocket】SpringBoot项目中使用WebSocket
spring boot·websocket·网络协议
clk660719 小时前
Spring Boot
java·spring boot·后端