RESTful ajax-该HTTP状态代码用于“;项目未找到”;
RESTful ajax - which HTTP status code for "item not found"?
假设我有一个带有项目列表的单页web应用程序,用户可以在其中单击项目以查看有关它的更多信息。实际的项目信息是异步加载的,使用对URL的AJAX GET请求http://www.example.com/item/[id],并在加载时显示。
问题是,如果给定id的项目不存在,该怎么办?现在,请求返回状态代码200,但实际内容表明该项目不存在。这似乎是个坏主意,所以我想让它返回一个状态代码,在某种意义上指示请求失败,因为该项不存在(例如,它还允许我在jQuery的ajax函数中的fail处理程序中捕获它)。
这是一种好的做法吗(只有当项目实际存在于数据库中时才返回状态代码200)?如果是,在这种情况下,最好使用哪个状态代码?
是的,您希望使用故障状态代码是正确的,而不是200 OK。在这种情况下,404 not Found将是理想的。(对于过去存在的项目,也有410消失。)
链接到规范或谷歌";HTTP状态码";以获得更多的资源。
是的,只有当对象存在时才返回200状态代码是个好主意。当您的项目不存在时,您应该返回404错误代码。
更多信息请点击此处
相关文章:
- Javascript中的列表,用于添加和显示所有项目
- jquery ias插件不适用于我的网站,加载更多项目不起作用
- 将Jenkins用于基于Gulp的项目
- 使用jquery将html文件加载到html中,用于离线/本地项目
- 将jquery插件应用于angularJS ng repeat中的新项目
- 范围$手表项目doens'不适用于javascript对象的字段
- 将 Netbeans Ide 用于不带 Java 的 HTML 项目
- 事件列表器不适用于追加的项目
- 如何将一个函数用于多个项目 JEditable/JQuery
- jquery :bxSlider 轮播活动类,用于所有显示项目(非单个)
- 如何使用 Backbone.Marionette 构建用于将项目创建到列表中的应用程序
- AngularJS指令,用于检查复选框列表中是否至少选中了一个项目
- 节点 - Express + Ember + Socket io项目文件结构,用于MVC开发
- 用于使用 Tab 键选择项目的事件
- 我可以在用于桌面AIR应用程序的Adobe Flex项目中使用JavaScript库,例如turn.js
- 用于多个目录项目的单个 RequireJS 优化器文件
- simpleCart(js) 'beforeAdd' 事件用于多个项目
- AngularJs:错误:用于配对项目的自定义筛选器引发错误:“达到 10 次 $digest() 迭代.流产!
- 将 emacs 用于大型多文件 JavaScript 项目
- 一个requirejs.config文件用于多个项目