前后端分离之后端解决参数为空字符串的问题

  用springboot+vue做前后端分离开发的时候,除了要考虑前端传空参的问题,还要考虑前端传来空字符串""或者“   ”空格这种形式的参数,并进行过滤,我们可以来看这样一个例子

    当前端选择的角色为全部,状态为全部的时候,url:http://localhost:8080/test/query?role=all&status=all,这个时候是可以正常查询出来数据的,但是如果角色选择为空,仅仅查询状态为全部的时候,url: http://localhost:8080/test/query?role=&status=all,可以看到""空字符串被当作有效参数,这个时候如果我们后端没有过滤调""空字符串的话,就会出现查询不到数据的情况,因为数据库里没有角色字段值为""的数据。

  遇到这种情况我们可以使用fastjson的值过滤器,valuefilter

 

 这样就可以过滤调前端传来的空字符串的问题

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
前后端分离的架构中,前端后端是独立的两个系统,它们通过接口进行通信。在这种情况下,参数的传递需要通过接口进行,一般使用 JSON 格式进行传递。 具体来说,前端通过 AJAX 或 Fetch API 向后端发送请求,请求中携带着参数后端接收到请求后,解析请求中的参数,进行相应的处理,并将处理结果以 JSON 格式返回前端。 在前端中,可以使用 JavaScript 的对象来表示参数,例如: ``` var params = { name: '张三', age: 18 }; ``` 这个对象中,`name` 和 `age` 是参数的名称,`张三` 和 `18` 是参数的值。在发送请求时,可以将这个对象转换成 JSON 字符串,然后作为请求参数发送给后端,例如: ``` fetch('/api/user', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(params) }) .then(function(response) { return response.json(); }) .then(function(data) { console.log(data); }); ``` 在后端中,可以使用相应的框架来解析请求中的参数。例如,在 Node.js 中,可以使用 Express 框架来处理请求,使用 `req.body` 来获取请求中的参数,例如: ``` const express = require('express'); const app = express(); app.post('/api/user', function(req, res) { const name = req.body.name; const age = req.body.age; // 处理参数,并返回结果 const result = { status: 'success' }; res.json(result); }); app.listen(3000, function() { console.log('Server started!'); }); ``` 以上是一个简单的例子,展示了在前后端分离的架构中如何使用参数。在实际开发中,可能会涉及到更加复杂的场景,需要根据具体的需求进行调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值