当前位置: 首页 > 面试题库 >

当发生用户/表单验证错误时,我应该向AJAX请求发送什么响应/状态代码?

彭俊智
2023-03-14
问题内容

我正在创建Web应用程序的功能,用户可以在其中“编辑”记录并使用jQuery通过AJAX提交表单。

当某人正在“ ajax编辑”一条记录并且他们使用有效数据提交表单时,我发送200状态代码,该状态代码触发jQuery AJAX
Success函数,然后忽略响应正文(因为它成功了,所以我不需要它),然后折叠表格。

当存在表单验证错误时,我将发送400状态代码以触发jQuery错误方法,并在请求的正文中指定哪些字段未验证。

在上一个StackOverflow问题中,有人提到我正在发送400状态代码并与响应主体一起工作,这“看起来很奇怪”。我的方法不是最佳实践吗?在这种情况下,您会建议我做什么?


问题答案:

使用4xx状态代码的有效负载就可以了。HTTP规范中没有其他说明。

如果您想要比400更具体的内容,请查看422 Unprocessable
Entity



 类似资料:
  • 我正在尝试在不修改后端的情况下对旧网站表单进行AJAXify。最初,后端会在收到表单后用“302移动”重定向到“谢谢”页面进行响应。 现在,当我尝试使用jQuery$提交表单时。ajax调用时,表单数据被成功提交,但“302 Moved”重定向似乎被浏览器取消,jQuery不知道发生了什么。 我的问题是,不管发生什么,美元。ajax调用返回一个错误,状态为0,因此我无法区分成功提交和错误。 有没有

  • 我不明白为什么创建对象的请求不再有效。我用mysql和sequelize创建模型。 我为每个请求填写用户的令牌,进行连接,检索他的个人资料,从数据库中检索所有文章,它工作了,但现在我不能再创建任何文章。 我做了控制台.log(req.body)我的函数,但我有这个:{}。我的函数从我的第一个条件给了我一个400错误。当我发送请求时,在VSC上,我有“ 代码:'ERR_HTTP_HEADERS_SE

  • 如何通过代码将我的响应和请求对象从jsp文件发送到servlet?我不想提交表单之类的。 我试过了: 但它说: 澄清一下:我有一个客户端向JSP文件发送一个post请求。这个JSP文件解析一个文件并将所需的信息放入会话中。我想从这个jsp文件中调用一个servlet来向数据库中添加一些东西。我认为这个错误代码是由这行

  • 在为我们的一个应用程序实施基于SAML的身份验证时,我遇到了一个要求,即我们需要在通过IdP(身份提供商)身份验证后恢复用户的会话。请考虑以下场景 - < li >用户试图打开第1页 < li >由于第1页要求验证,我们将用户重定向到IDP < li>IDP验证并将用户重定向回SP(服务提供商)。 不幸的是,在身份验证后,用户最终会进入默认主页而不是第 1 页。根据文档,我们可以使用 将信息从 S

  • 在函数方法POST中,当表单提交时,它不起作用。我有错误: xhr.js?b50d POST https://app/login 400(错误请求) 错误:请求失败,在createError(createError.js?2d83)处,在xmlHttpRequest.handleLoad(xhr.js?B50d)处,在settle(settle.js?467f)处,状态代码为400 登录 在邮递员

  • 问题内容: 我知道我可以使用设置响应的状态码。设置状态代码时如何返回JSON数据? 问题答案: 使用。此方法采用任何可序列化的数据类型。例如,在以下示例中,我使用了字典。 要返回状态码,请返回响应和代码的元组: 请注意,默认状态代码为200,因此无需指定该代码。 更新 从 Flask 1.1开始 ,return语句将在第一个返回值中自动创建一个字典。您可以直接返回数据: 您还可以使用状态代码返回它