gpt4 book ai didi

rest - 我如何确保传递的参数没有任何跨站点脚本内容

转载 作者:行者123 更新时间:2023-12-01 00:37:41 25 4
gpt4 key购买 nike

我正在使用 Spring 创建 Rest Web 服务并将参数传递给模型类中的方法。

我的输入参数是

{
"user_id": 23,
"user_email_id": "q@q.c",
"user_password": "fdsdsdf",
"firstname": "<script>window.alert(‘surprise!’);</script>",
"lastname": "kdfgkdf",
"mobile_number": "1414141414",
"user_status": 1,
"isdeleted": 0,
"created_by": 1,
"profile_picturename": "kfksdjfhksjd",
"address": "sfdsdfsd"
}

& 我的 ReST Controller 方法如下

@RequestMapping(value = "/validate", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
public Object AddUser(@Valid @RequestBody UserInputModel userInputModel, BindingResult br, HttpServletResponse response) throws Exception {
//Logic

}

在这里我想确保传递的参数不包含任何 Xss 或者我如何确保 HTML 编码器适用于我的输入模型

提前致谢

最佳答案

使用 Hibernate Validator 的@SafeHtml 注释:

https://docs.jboss.org/hibernate/validator/5.2/reference/en-US/html/ch02.html#validator-defineconstraints-hv-constraints

需要添加jsoup作为依赖

例子:

@Entity 
public class Foo {

@SafeHtml(...)
private String firstName;

}

然后如果你验证实体,如果firstName包含xss则无效

关于rest - 我如何确保传递的参数没有任何跨站点脚本内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35037718/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com