GET应该用于查看内容而不更改内容,而POST应该用于更改内容。例如,搜索页面应使用GET,而更改密码的表单应使用POST。
所以在Spring中我们有@PathVariable注释,我们可以在控制器中访问它。
我的问题是: 1)我们是否应该在控制器中使用路径变量来执行任何数据库操作,如删除或更新,因为它似乎清楚地显示在URL中。如果是,那么它可能是我们的应用程序中的任何人都可以再次提出该请求的漏洞。
我知道我们可以在Spring中使用@RequestParam和POST方法以及GET方法,但我只想知道如果可以使用PathVariable来更改我们的数据库。
答案 0 :(得分:0)
这不是@RequestParam,@ RequestBody或@PathVariable的问题。只要这三种方法可以使用工具自动化,您应该检查正确的用户ROLES来执行数据库操作。纯粹的逻辑案例!
答案 1 :(得分:0)
无论您使用@PathVariable
还是@RequestParam
。
我认为您必须考虑的重要部分是,您可以使用隐藏的输入字段。并且可以使用@RequestParam
注释捕获它们。
所以我会说这取决于你想要在你的网址中显示什么以及你想要什么"隐藏"。