java - 使用 403 状态代码响应的用例

标签 java http jakarta-ee http-status-code-403

我最近开始开发 Java EE 应用程序,并且我试图了解更多有关 HTTP 状态代码的信息,以及何时应该使用它们。

我遇到的一个案例是当用户登录并想要检查订单状态时。要求是用户无法检查不属于他们的订单的状态。

查询订单的网址,例如:

mysite.com/order/status?id=22594

处理此请求的 servlet 将检查 ID 参数,然后从数据库中检索订单。

如果用户输入了他们未提交的订单的 ID,返回 403 或回复未找到的订单是否合适?

最佳答案

如果用户没有提交订单,或者订单不属于用户,则返回以下任一响应都是合适的:

  1. 404- 未找到资源。如果这不会向用户显示 另一个用户的订单 ID 存在。
  2. 401-Unauthorized。这将显示订单存在,但不属于请求用户。

从安全角度来说,返回404比较好。

关于java - 使用 403 状态代码响应的用例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27658148/

相关文章:

java - 如何实现自定义 ViewProcessor<T> (jax-rs)?

java - Hibernate 的 Session.flush() 刷新了什么

java - 如何让一个线程提交给执行者服务并在Java中中断它

spring - IONIC HTTP post multipart/form-data - 图像与 JSON 一起上传

php-curl 不适用于 POST 请求

java - HttpUrlConnection fatal error

java - Tomcat JNDI 资源不可访问

Java 俄罗斯方 block - 在 grid[row][col] 和坐标 (x, y) 上混淆

java - jquery 与 spring mvc 在 java 中

java - 在 twitter4j 的 ResponseList 上使用 .add() 方法?