从apache mod\u proxy\u ajp发送到tomcat ajp connector的ajp属性可以通过如下java代码进行检索
String attributeValue = request.getAttribute(attributeName);
这样做,我看到这些转发的attributeName没有列在request.getAttributeName()的枚举中。最后一个方法只返回这4个,缺少ajp属性:
javax.servlet.forward.request_uri
javax.servlet.forward.context_path
javax.servlet.forward.servlet_path
javax.servlet.forward.path_info
javax.servlet.forward.mapping
例如,我可以使用request.getattribute(“groupid”)在java中检索“groupid”,但是request.getattributenames()没有列出“groupid”。为什么?
env:apache tomcat/8.5.54(debian)apache/2.4.25(debian)
伯纳德
1条答案
按热度按时间bq3bfh9z1#
这是故意的。这些属性是“隐藏”的,不会出现在的返回值中
ServletRequest.getAttrbuteNames
. 您必须知道属性的名称才能获取它们。