论坛首页 Java企业应用论坛

为手机端提供接口时,大家一般如何在后台判断参数合法性

浏览 9495 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2013-07-20  
fisher123 写道
cengjingyiwei 写道
ivan19861025 写道
cengjingyiwei 写道
ivan19861025 写道
cengjingyiwei 写道
fisher123 写道
Spring MVC   的参数绑定 默认进行了转换(同名的),也可以像楼上说的那样,用Vaildator


自动绑定,不能判断参数不合法

没明白楼主的意思. 绑定到对象后, 为什么不能判断参数不合法? 比如呢?


先自动绑定,再去判断绑定的参数合法不合法,你不感觉还不如自己从request中去,并判断参数合法性,一步到位来得直接些?如我以上的代码。
其实我就是想知道,大家给手机提供接口时,是如何处理参数的

用了spring mvc, 参数自动生成javabean, 再对该javabean作数据合法性验证(可选), 给子类controller调用.
试想, 如果提供20个接口, 每个接口都有很多参数, request.getP(),要写多少次??
光获取参数都要几十上面行代码了.


理论上确实这样的,但实际情况是,接口参数通用性极小,查询参数多为ID,几乎都要做整型验证,即使对javabean验证,不也是重复吗?和request没什么区别。
另外,感谢您的建议,不是较真,真的是在写这块,从实现情况出发考虑的。

做整形验证 Spring 参数绑定 自己就验证了,转换不到整型就会抛异常。如果是字符串之类的,需要验证合法性
比如  验证一个字符串是不是日期类的字符串,可以在voidlitor里面验证  也可以自己在controller里面做验证啊 

恩,spring mvc是会对整型验证抛出异常,但这异常是框架抛出的,怎么处理,接口要完整,要返回参数错误信息的。
0 请登录后投票
   发表时间:2013-07-22  
cengjingyiwei 写道
fisher123 写道
cengjingyiwei 写道
ivan19861025 写道
cengjingyiwei 写道
ivan19861025 写道
cengjingyiwei 写道
fisher123 写道
Spring MVC   的参数绑定 默认进行了转换(同名的),也可以像楼上说的那样,用Vaildator


自动绑定,不能判断参数不合法

没明白楼主的意思. 绑定到对象后, 为什么不能判断参数不合法? 比如呢?


先自动绑定,再去判断绑定的参数合法不合法,你不感觉还不如自己从request中去,并判断参数合法性,一步到位来得直接些?如我以上的代码。
其实我就是想知道,大家给手机提供接口时,是如何处理参数的

用了spring mvc, 参数自动生成javabean, 再对该javabean作数据合法性验证(可选), 给子类controller调用.
试想, 如果提供20个接口, 每个接口都有很多参数, request.getP(),要写多少次??
光获取参数都要几十上面行代码了.


理论上确实这样的,但实际情况是,接口参数通用性极小,查询参数多为ID,几乎都要做整型验证,即使对javabean验证,不也是重复吗?和request没什么区别。
另外,感谢您的建议,不是较真,真的是在写这块,从实现情况出发考虑的。

做整形验证 Spring 参数绑定 自己就验证了,转换不到整型就会抛异常。如果是字符串之类的,需要验证合法性
比如  验证一个字符串是不是日期类的字符串,可以在voidlitor里面验证  也可以自己在controller里面做验证啊 

恩,spring mvc是会对整型验证抛出异常,但这异常是框架抛出的,怎么处理,接口要完整,要返回参数错误信息的。

参数绑定了的话,当参数转换失败了的话,一般是会报http400的错
0 请登录后投票
   发表时间:2013-07-22  
这个时候,就是框架的好处。比如springMVC在方法上可以直接就验证。不然的话,你就得自己在慢慢request了。
0 请登录后投票
   发表时间:2013-07-24  
必须用springmvc等前端控制框架啊,减少巨大获取参数,校验参数格式等苦逼的代码~
0 请登录后投票
   发表时间:2013-07-25  
Hibernate Validator
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics