jsp - 当从不同 JSP 调用相同方法时得到 200 响应时出现 400 Bad Request

标签 jsp jquery spring-mvc http-headers

对回复有点困惑。我通过来自不同 JSP 页面的 ajax 调用来调用相同的方法,并得到不同的 HTTP 响应。一个给 200,另一个给 400。为什么会这样?

JSP 页面之间的唯一区别是级别/深度

示例

  main.jsp is at level localhost/appname/main.htm
  other.jsp is at level localhost/appname/myworld/other.htm

两者发布 Ajax 调用的 URL 相同

    function getResponse(value) {
        $.ajax({
            url: '${pageContext. request. contextPath}/posthere/callme.htm',
            data: {
                valueId: value,
            },
            type: "POST",
            success: function (data) {
                if(data == true) {
                    console.log("Success: ");
                } else {
                    console.log("Failed: ");
                }
            }
        });
    }

Controller

@Controller
@RequestMapping(value = "/posthere")
@SessionAttributes({"userSession"})
public class MyController {

   @RequestMapping(value = "/callme", method = RequestMethod.POST)
   public @ResponseBody
   boolean getcalled(@RequestParam("valueId") String valueId,
                               @ModelAttribute("userSession") UserSession userSession,
                               HttpServletResponse httpServletResponse) throws IOException {
      if(userSession != null) {
          //do your magic. Note: This logic is not getting invoked. I have a breakpoint here.
          return true;
      }
      return false; 
   }
}

最佳答案

检查内容类型。当内容类型为 X 并且我发送的内容不等于 X 时,我遇到了此问题。

关于jsp - 当从不同 JSP 调用相同方法时得到 200 响应时出现 400 Bad Request,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20682837/

相关文章:

javascript - 从公共(public)网站上存储的 session 记录中抓取对话

javascript - 为什么我的 <div> 内容 </div> 会闪烁?

javascript - 根据复选框选择添加类

java - response.sendRedirect 在 Spring MVC RequestMethod.DELETE 中不起作用

spring - 在生产服务器中部署时是否应该更改 mongo bean 的值?

spring-mvc - Apache shiro,返回状态 401 而不是重定向到 url

javascript - 如何返回而不提交表单

java - 日期值无法正确显示

jsp - 如何将Servlet重定向到给定的URL

jQuery 和 Intraweb?