我对RESTful世界很陌生,目前我正在讨论是否在不存在的URL上调用delete方法时,是否应该返回404 Resource Not Found
。目前,代码返回200 OK
代码,但这并不会告知用户他们想要做什么是不可能的。
我已经在网上和这里看过了,很多人对此事有不同意见,HTTP没有返回代码的标准。
(我正在考虑某人想要删除某些东西,但是通过拼写错误,删除无效资源但是没有返回错误代码,不会被告知删除不成功,并且没有意识到错误。)
答案 0 :(得分:0)
我会返回404并允许前端开发人员决定如何处理这种情况。作为前端开发人员,如果我的用户试图删除不存在的资源,我想处理这种情况。可能是在我找到资源和现在之间,另一个用户删除了资源。另一方面,可能就像你说的那样有一个错字。
但无论如何,我想知道用户是否正在尝试删除不再存在的资源,以便我可以适当地处理这种情况。
但是这种情况取决于您正在构建的应用程序的类型。例如,如果另一个用户在最近5分钟内删除了资源,则可能需要返回410,然后为所有不存在的URL返回404。但是,如果实际删除了某些内容,我只会期望返回200。
SharePoint REST遵循此模式。