前端Get Post Put Delect请求 传参数 不传参数给后端

这篇具有很好参考价值的文章主要介绍了前端Get Post Put Delect请求 传参数 不传参数给后端。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Get请求不传参、Get请求传不是实体类的参数、Get请求传实体类的参数

Post 请求不传参数、Post请求传不是实体类的参数、Post请求传实体类的参数  总是分不清,其中Delect 请求使用的地方很少就先记录Delete请求吧文章来源地址https://www.toymoban.com/news/detail-729025.html

Delect 删除

单个删除

前端

<el-button type="text" @click="handleDel(scope.row.id)">删除</el-button>

      /**
       * 删除单条数据
       */
      handleDel(id) {
        this.$confirm('此操作将永久删除该数据, 是否继续?', '提示', {
          type: 'warning'
        }).then(() => {
          del(id).then(res => {
           
          })
        })
      },

前端跳后端

/**
 * 删除单条数据
 * @param id 主键值
 */
export function del(id) {
  return request({
    url:define.api+'/user/' + id,
    method: 'DELETE'
  })
}

后端

    /**
     * 删除
     * @param id 主键
     */
    @DeleteMapping("/{id}")
    @DSTransactional
    public ActionResult delete(@PathVariable("id") String id){
        Userentity = service.getInfo(id);
        if(entity!=null){
            service.delete(entity);
        }
        return ActionResult.success("删除成功");
    }

批量删除

前端

<el-button type="danger" @click="batchDelete()">批量删除</el-button>
/**
       * 批量删除
       */
      batchDelete() {
        // 判断是否勾选了数据
        if (!this.multipleSelection.length) {
          this.$message({
            type: 'error',
            message: '请选择一条数据',
            duration: 1500,
          })
          return
        }
        let length = this.multipleSelection.length;
        let size = this.listQuery.pageSize;
        const ids = this.multipleSelection.join();

        if (length == size) {
          this.$confirm('请问您是选择当页数据还是选择全部数据?', '确认信息', {
            distinguishCancelAndClose: true,
            confirmButtonText: '全部数据',
            cancelButtonText: '当页数据',
            type: 'warning',
            center: true
          }).then(() => {
            this.$confirm('您确定要删除全部数据吗, 是否继续?', '提示', {
              type: 'warning'
            }).then(() => {
              // 批量删除全部。
              batchDeleteAll().then(res => {
                this.$message({
                  type: 'success',
                  message: res.msg,
                  onClose: () => {
                    this.initData()
                  }
                })
              })
            }).catch(() => {
            })
          }).catch(action => {
            this.$confirm('您确定要删除当页数据吗, 是否继续?', '提示', {
              type: 'warning'
            }).then(() => {
              //批量删除当页
              batchDelete(this.multipleSelection).then(res => {
                this.$message({
                  type: 'success',
                  message: res.msg,
                  onClose: () => {
                    this.initData()
                  }
                })
              })
            });
          });
        } else {
          this.$confirm('您确定要删除所选数据吗, 是否继续?', '提示', {
            type: 'warning'
          }).then(() => {
            batchDelete(this.multipleSelection).then(res => {
              this.$message({
                type: 'success',
                message: res.msg,
                onClose: () => {
                  this.initData()
                }
              })
            })
          });
        }
      },

前端跳后端

/**
 * 批量删除
 */
export function batchDeleteAll() {
  return request({
    url: api+'/user/batchDeleteAll',
    method: 'get'
  })
}

/**
 * 批量删除
 */
export function batchDelete(data) {
  return request({
    url: api+'/user/batchDelete',
    method: 'POST',
    data
  })
}

后端

@Slf4j
@RestController
@RequestMapping("/user")
public class UserController {

    @PostMapping("/batchDelete")
    public ActionResult batchDelete(@RequestBody List<String> ids) {
        boolean bool = mapper.batchDelete(ids);
        if (bool) {
            return ActionResult.success("删除成功");
        } else {
            return ActionResult.fail("删除失败");
        }
    }

    @GetMapping("/batchDeleteAll")
    public ActionResult batchDeleteAll() {
        boolean bool = mapper.batchDeleteAll();
        if (bool) {
            return ActionResult.success("删除成功");
        } else {
            return ActionResult.fail("删除失败");
        }
    }

}
boolean batchDeleteAll();    
<update id="batchDeleteAll">
        update user set IZ_DEL=1
</update>


boolean batchDelete(List<String> ids);

<update id="batchDelete">
        update user set IZ_DEL=1 where ID in
        <foreach collection="list" open="(" close=")" item="j" separator=",">
            #{j}
        </foreach>
    </update>


Get请求

Get请求加一个不是实体类的参数--通过id 查详情

前端

    /**
     * 初始化表单数据
     * @param id 主键值
     * @param isDetail 是否是详情页面,控制是否可编辑
     */
    init(id, isDetail) {
      this.dataForm.id = id || 0;
      this.visible = true;
      this.isDetail = isDetail || false;
      this.$nextTick(() => {
        this.$refs['elForm'].resetFields();
        if (this.dataForm.id) {
          this.loading = true
          //加载表单数据
          getInfoToEdit(this.dataForm.id).then(res => {
            this.dataInfo(res.data)
            this.loading = false
          })
        } else {
          this.clearData(this.dataForm)
        }
      });
      this.$store.commit('generator/UPDATE_RELATION_DATA', {})
    },

前端跳后端

/**
 * 获取表单详细(编辑页面调用)
 */
export function getInfoToEdit(id) {
  return request({
    url: define.api+'/user/' + id,
    method: 'GET'
  })
}

后端

@RestController
@RequestMapping("/user")
public class UserController {  
    /**
     * 根据id获取表单信息(编辑表单)
     * @param id 主键
     */
    @GetMapping("/{id}")
    public ActionResult<UserVo> info(@PathVariable("id") String id){
        User entity = service.getInfo(id);
        UserVo vo = JsonUtil.getJsonToBean(entity, UserVo.class);
        return ActionResult.success(vo);
    }
}  

Get请求加多个不是实体类的参数--前端有模糊查询

前端

//执行情况
      getExecutionRepairMonth(startDay,endDay){
        getExecutionRepairMonth(startDay,endDay).then(res=>{
          this.listData = res.data.map(item=>{
            return {name:item.name,value:item.num}
          });
        })
      },

前端跳后端

export function getExecution(startDay,endDay) {
	return request({
		url: define.api + `/repairMonth/getExecution?startDay=${startDay}&endDay=${endDay}`,
		method: 'get',
	})
}

后端

@RestController
@RequestMapping("/repairMonth")
public class RepairDayController {
    /**
     * @description: 通过检修计划编号 获取详情
     */
    @GetMapping("/getExecution")
    public ActionResult getExecution(String startDay,String endDay){
       
    }
}

Post请求

Post请求加一个是实体类的参数--前端有模糊查询返回List

前端

      /**
       * 初始化加载列表数据
       */
      initData() {
        this.listLoading = true;
        let _query = {
          ...this.listQuery,
          ...this.query,
          menuId: this.menuId
        };
        // 调用查询列表数据api接口
        listOLoadAnalysis(_query).then(res => {
          var _list =[];
          for(let i=0;i<res.data.list.length;i++){
            let _data = res.data.list[i];
            _list.push(_data)
          }
          this.list = _list
          this.total = res.data.pagination.total
          this.listLoading = false
        })
      },

前端跳后端

/**
 * 查询列表数据
 * @param data 查询条件参数对象
 */
export function listOLoadAnalysis(data) {
  return request({
    url: define.api+'/user/getList',
    method: 'POST',
    data
  })
}

后端

@RestController
@RequestMapping("/user")
public class UserController {   

     /**
     * 列表 表数据获取(带分页)
     * @param userQueryVO 查询条件对象
     */
    @PostMapping("/getList")
    public ActionResult list(@RequestBody UserQueryVO userQueryVO ){

    }

}

Put请求

Put请求携带实体类的参数---更新数据保存接口

前端

<el-button type="primary" @click="dataFormSubmit()" v-if="!isDetail"> 确 定</el-button>

    /**
     * 表单提交方法,会先进行表单数据校验
     */
    dataFormSubmit() {
      this.$refs['elForm'].validate((valid) => {
        if (valid) {
          this.request()
        }
      })
    },
    /**
     * 表单提交调用api接口方法
     */
    request() {
      var _data = this.dataList()
      if (!this.dataForm.id) {
        // 表单新增保存
        addOLoadAnalysis(_data).then((res) => {
          this.$message({
            message: res.msg,
            type: 'success',
            duration: 1000,
            onClose: () => {
              this.visible = false
              this.$emit('refresh', true)
            }
          })
        })
      } else {
        // 表单修改保存
        updateOLoadAnalysis(this.dataForm.id, _data).then((res) => {
          this.$message({
            message: res.msg,
            type: 'success',
            duration: 1000,
            onClose: () => {
              this.visible = false
              this.$emit('refresh', true)
            }
          })
        })
      }
    },

前端跳后端

/**
 * 新增表单保存数据
 * @param data 提交的表单对象
 */
export function addOLoadAnalysis(data) {
  return request({
    url: define.api+'/user',
    method: 'POST',
    data
  })
}

/**
 * 修改表单保存数据
 * @param data 提交的表单对象
 */
export function updateOLoadAnalysis(id, data) {
  return request({
    url: define.api+'/user/' + id,
    method: 'PUT',
    data
  })
}

后端

@RestController
@RequestMapping("/user")
public class UserController {

    /**
     * 更新数据保存接口
     *
     * @param id 主键
     * @param oLoadAnalysisVO 表单信息
     */
    @PutMapping("/{id}")
    @DSTransactional
    public ActionResult update(@PathVariable("id") String id,@RequestBody @Valid UserVo userVo){

    }

}
        
                    

到了这里,关于前端Get Post Put Delect请求 传参数 不传参数给后端的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ajax构造get、post、put请求

    前端代码: 后端代码:

    2024年02月12日
    浏览(49)
  • node.js中获取前端传递的get、post请求参数

    req.query:get请求; req.body:post请求; (1) get请求:  (2) post请求:      第一步:下载body-parser模块      第二步:引入body-parser模块      第三步:使用body-parser模块      第四步:使用body-parser模块的参数json方法      第五步:获取参数

    2024年02月13日
    浏览(45)
  • https请求httputil方法的使用实例get,post,put

    一、get方式 返回数据格式 这里可以用类来接收,然后获取data里面数据(如上) 二、post方式 三、put方式

    2023年04月09日
    浏览(89)
  • JAVA调用第三方接口的GET/POST/PUT请求方式

    GET请求 POST请求 POST请求(JSON传参) PUT请求(传TOKEN)

    2024年02月03日
    浏览(63)
  • uni-app封装request请求及get、post、put等方法

    直接上代码 request.js文件 export default {   common: {     baseUrl: \\\"http://172.20.4.212:3000/api\\\",     data: {},     header: {       \\\"Content-Type\\\": \\\"application/json\\\",       \\\"Content-Type\\\": \\\"application/x-www-form-urlencoded\\\"     },     method: \\\"GET\\\",     dataType: \\\"json\\\"   },   request (options = {}) {     uni.showLoading({  

    2024年02月09日
    浏览(44)
  • ruoyi若依前后端分离项目部署到服务器后,PUT DELETE请求403错误,GET POST请求正常

    后端打包方式war,部署到tomcat8, PUT DELETE请求报403错误,网上有三种说法 第一种是跨域请求问题 第二种是服务器没有放开了PUT DELETE请求,需要前端添加header ruoyi vue 自动生成代码PUT DELETE为http不安全方法,这个怎么解决安全问题 · Issue #I43AX6 · 若依/RuoYi-Vue - Gitee.com 用域名访问

    2024年01月17日
    浏览(56)
  • HTTP协议 9 种请求方式用途及区别(详解)-- GET、POST、HEAD、OPTIONS、PUT、PATCH、DELETE、TRACE、CONNECT

    关于HTTP简介HTTP菜鸟教程 根据 HTTP 标准,HTTP 请求可以使用多种请求方法。 HTTP1.0 定义了三种请求方法: GET, POST 和 HEAD 方法。 HTTP1.1 新增了六种请求方法:OPTIONS、PUT、PATCH、DELETE、TRACE 和 CONNECT 方法。 序号 方法 描述用途 1 GET 【 获取资源 】本质就是发送一个请求来取得服务

    2024年02月02日
    浏览(61)
  • Http中post/get请求参数接收

    Http请求报文示例图如下:   ①是请求方法,GET和POST是最常见的HTTP方法,除此以外还包括DELETE、HEAD、OPTIONS、PUT、TRACE。不过,当前的大多数浏览器只支持GET和POST,Spring 3.0提供了一个HiddenHttpMethodFilter,允许通过_method的表单参数指定这些特殊的HTTP方法(实际上还是通过POST提

    2024年01月25日
    浏览(81)
  • http之GET请求和POST请求的传递参数的方式

    get: 情况1:接口正常返回 code,data,message ,且无需传递参数 (vu3) 情况2: 需要将参数拼接到url地址上 (vue3)   情况3 需要传递参数,query 传参 (vue3) 情况4 既有query传参也有path传参 post 情况1 接口返回的数据没有使用data包裹,这种情况一般取不到数据,我们需要用 ext

    2024年02月16日
    浏览(44)
  • flask获取请求对象的get和post参数

    get请求参数是在URL里面的,post请求参数是放在请求头里面的 浏览器访问 http://127.0.0.1:5000/get 自定义参数值,浏览器访问 http://127.0.0.1:5000/get?a=123 postman测试 使用 reques.values 同时获取get和post请求的参数: 这样的好处就是不用在代码里面区分get和post请求是用args和form来获取 验证

    2024年02月11日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包