gpt4 book ai didi

javascript - Spring MVC - RequestParamException 参数不存在

转载 作者:搜寻专家 更新时间:2023-10-30 19:46:59 24 4
gpt4 key购买 nike

我的网站最终出现了一个问题。它使用 AJAX 请求从使用 Spring MVC 的服务器获取数据。

发生的(间歇性)是有时我们会遇到这样的异常:

org.springframework.web.bind.MissingServletRequestParameterException: Required Integer parameter 'page' is not present
at

这种异常发生在某些 AJAX POST 调用中(不仅针对这种情况!!)我们仍然无法重现它以了解发生了什么。

例如,在其中一种情况下,参数“page”(用于在用户滚动页面时加载内容 - 因此它是必需的变量)通过 AJAX 调用发送,该调用具有带有页面参数的“数据”字段来自如下表单:

<input type="hidden" name="page" id="page" value="1">

还有一个 ajax 调用就像这个($("#filter")url 都可以):

$.ajax({
type: "POST",
data: $("#filter").serialize(), // serializes the form's elements.
url: _ctx + URL_FILTER,
cache: false
})

我们要重现它的唯一方法是将其属性“名称”更改为“页面”以外的内容。但我猜想情况并非如此(大多数用户甚至不打开开发者控制台...)

我用谷歌搜索了很多,检查了每一种可能性。环境没问题:

(Content-Type: application/x-www-form-urlencoded; charset=UTF-8) 

参数没问题,AJAX 看起来没问题,一切似乎都正常...但是我们无法找到发生了什么。我们已经尝试了很多可能性,但我们仍然无法强制这些异常发生。

我们的一个假设是,有时 AJAX 可能会发送没有任何参数的空数据 block 。但我们甚至不知道它是真是假,也不知道如何检验它的真实性。

有哪些可能性?如何测试?

编辑:我们可以重现获取异常的一种方法:重复重新加载页面几秒钟(按住重新加载键一段时间)。有没有办法防止这种情况的异常?!

最佳答案

对页面参数的 Controller 类方法进行以下更改@RequestParam(defaultValue = 0) int 页面。

或者在此处粘贴 Controller 方法。

关于javascript - Spring MVC - RequestParamException 参数不存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32956844/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com