用于验证资源的REST实践

qui*_*qui 2 rest

我目前正在实施"令牌"REST服务.

令牌只是一个字符串,由一些参数构建,然后经过哈希处理并在一定时间后过期.

我希望在我的REST服务中有一个可以验证令牌的端点,但我不是100%确定如何以RESTful方式实现它

  1. 我假设这应该通过GET完成,因为它不会改变状态,只要我正确设置缓存控件,它就可以缓存一段合理的时间.即mysite.com/token/kjfhwekjfwekj
  2. 什么是适当的返回码?如果它有效,我会假设200,但如果它无效呢?我觉得400是错的,因为虽然资源本身无效,但客户端没有错误地调用端点.404在这里是否正确?如果我们认为令牌是短暂的资源,我想是这样的吗?

小智 6

GET 是检查令牌的正确HTTP动词.

假设令牌的"无效"意味着:

  1. 它永远不会存在,或者
  2. 它存在但不再存在.

您是否希望您的服务客户能够了解其中的差异

  • 如果,则返回404 Not Found案例1和410 Gone案例2.
  • 如果没有,请返回404 Not Found.

如果令牌存在,200 OK则是正确的.