我们的API用户可以通过向根API地址发送请求来获取根文档(集合列表)GET.如果他发送POST,我们应该返回一些东西.同样的问题适用于其他资源路径,例如PATCH在查询路径上发送等.并非所有方法在某些路径上都有意义.
我从HTTP RFC看到的是我们应该返回代码405:不允许Allowed使用方法,并使用允许的方法列表发回响应头.
我看到例如GitHub API返回404:在我上面解释的情况下找不到(发送POST到root).
什么是正确的回应?404还是405?我看到405更多开发人员友好,所以有什么理由不使用它吗?
Bog*_*dan 30
根据HTTP规范和REST准则,在这种情况下的预期行为将是返回405 Method Not Allowed.资源就在那里,因为GET有效,所以404 Not Found会让人感到困惑.
我不熟悉GitHub API但在某些情况下我看到403 Forbidden它也会返回404 Not Found:
在某些地方,需要身份验证的请求将返回404 Not Found,而不是403 Forbidden.这是为了防止私有存储库意外泄露给未经授权的用户.
也许根域地址上的行为是一个更大的机制的一部分,它通常处理这种情况,谁知道.也许你会问?
| 归档时间: |
|
| 查看次数: |
9820 次 |
| 最近记录: |