我有理由相信我知道这个问题的答案,但我正在努力寻找任何具体的信息。我知道客户端向 http 服务器提交请求,可选择提供请求参数。服务器具有通过对象将信息存储在请求属性中的附加功能。我的问题是,客户端是否可以访问 http 请求对象中的属性?我们有很多写得不好的代码,看起来像这样:
if (request.getAttribute("name") != null)
name = request.getAttribute("name);
else if (request.getParameter("name") != null)
name = request.getParameter("name");
我猜这是因为最初的开发者并没有完全理解客户端 http 请求如何向服务器提交数据。无论如何,我目前正在对请求数据实施额外的验证和编码,以防止 XSS 漏洞,并想知道客户端是否有可能破坏/破解/利用请求属性(假设它们从未填充过来自客户端的数据)?