NutzCN Logo
问答 datagrid通过ajax向后台传递sql语句参数,如果sql语句类似oid>'1' or dlts>'0',则不能够进入后台函数接口
发布于 2487天前 作者 qq_256d0369 1508 次浏览 复制 上一个帖子 下一个帖子
标签: nutzwk

问题描述:
前端向后台传送sql语句,如果是单句比如“ oid>'1' ”,后台能够进入函数正常执行,如果是复杂语句比如oid>'1' or dlts>'0',后台就不能进入函数执行。nutz2.0的时候没有问题。请问该如何解决

前端代码:
SQL=oid>'1' or dlts>'0'
$("#div_zhTable").datagrid({
border: true,
url:base+"/complexQuery",
queryParams:{"connStr":connJson,"tableName":tcname,"SQLStr":SQL,"geoStr":geostr,"pipeType":pipeType},
singleSelect:true,//是否单选
pagination:true,//分页控件
loadMsg:"数据读取中。。。",
pageSize: 5,
pageNumber:1,
pageList:[5,10,15],
columns:zhSearchhelp.columnjson,
// onDblClickRow: fly2Line,
loadFilter: function(data){……
}
后台代码:
@At
@AdaptBy(type = JsonAdaptor.class)
@Ok("raw")
public String complexQuery(@Param("connStr") String connStr, @Param("pipeType") String pipeType, @Param("tableName") String tableName, @Param("SQLStr") String SQLStr,@Param("geoStr") String geoStr,@Param("page") int curPage, @Param("rows") int pageSize)

打印信息:
[DEBUG] 2017-06-07 10:40:30,962 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:151) - Get 'shiroUtil'<class cn.wizzer.framework.util.ShiroUtil>
[DEBUG] 2017-06-07 10:40:30,962 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:151) - Get 'dateUtil'<class cn.wizzer.framework.util.DateUtil>
[DEBUG] 2017-06-07 10:40:30,962 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:151) - Get 'stringUtil'<class cn.wizzer.framework.util.StringUtil>
[DEBUG] 2017-06-07 10:40:30,963 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:151) - Get 'stargisPipeController'<class cn.wizzer.app.web.modules.controllers.stargis.StargisPipeController>
[DEBUG] 2017-06-07 10:40:30,963 cn.wizzer.app.web.commons.processor.XssSqlFilterProcessor.checkParams(XssSqlFilterProcessor.java:57) - [POST]URI=/service/pipe/utils/complexQuery SQL关键字过滤:oid>'1' or dlts>'0'
[DEBUG] 2017-06-07 10:40:30,964 cn.wizzer.app.web.commons.processor.LogTimeProcessor.process(LogTimeProcessor.java:26) - [POST]URI=/service/pipe/utils/complexQuery 2ms

3 回复

明显写着"XssSqlFilterProcessor" SQL关键字过滤

前端往后端传SQL, 就一点都不担心注入问题吗??

那咱们一般sql语句应该怎么向后台传递呢?谢谢

@qq_256d0369 不可能传sql啊,传查询条件的对象

来自炫酷的 NutzCN

添加回复
请先登陆
回到顶部