response.sendError(403),但返回404

时间:2017-03-01 08:54:07

标签: java http web filter response

像这样的代码:

void doFilter(request, response, chain){
  try{
    //something code process
    validate(request);
    chain.doFilter(request,response);
  }
  catch(Exception e){
    response.sendError(403,"Forbidden");
  }

}
void validate(request) throws Exception{
   //validate params,if not validate,just throw exception.
}

直接访问web项目,而不是传递nginx之类的东西。 但状态返回总是404,这里有人可以帮助我吗?非常感谢。
顺便说一下,当我在我的Windows PC上运行项目时,我得到了正确的状态,但是当它在linux上时没有工作。

1 个答案:

答案 0 :(得分:0)

404的回复代码表示找不到 。您尝试向URL发送请求,但服务器找不到该请求,因此您的代码将无法运行,因此 404 而不是 403 。您需要检查网址的设置,并找出您的网址不匹配的原因。可能是重写规则。解决后,您的代码将运行并尝试执行chain.doFilter。如果不成功,则会返回 403