Rest 宁静-->;检查项目是否处于活动状态?
我正在编写一个RESTful服务,其中一个端点将检查资源是否处于活动状态 我正在努力使RESTful资源名符合标准 我的路径GET/api/v1/items/{itemid}/isActive--应该是什么?我所做的(或想做的)就是在响应中发送一个True/False 还是我必须发送404响应?-->这是一个简单的get,如果找不到404 你说的“主动”是什么意思?如果此状态(active:true/false)是业务逻辑的一部分,那么它应该只是响应的一个属性。请始终记住,REST(表示性状态传输)是关于表示应用程序的当前状态的 如果必须公开项目的状态,只需将其包含在响应中:Rest 宁静-->;检查项目是否处于活动状态?,rest,
servicestack,Rest,
servicestack,我正在编写一个RESTful服务,其中一个端点将检查资源是否处于活动状态 我正在努力使RESTful资源名符合标准 我的路径GET/api/v1/items/{itemid}/isActive--应该是什么?我所做的(或想做的)就是在响应中发送一个True/False 还是我必须发送404响应?-->这是一个简单的get,如果找不到404 你说的“主动”是什么意思?如果此状态(active:true/false)是业务逻辑的一部分,那么它应该只是响应的一个属性。请始终记住,REST(表示性状态传
GET /api/items/1
{
"name": "First item",
"state": "inactive"
}
或者,您可以设计如下搜索:(我已经对空间进行了URL编码。)
如果没有具有活动状态且名称为“First item”的项,则应返回空集合
我不会在路由中加入太多的业务逻辑,比如一个特定的资源来检查一个项目是否处于活动状态,因为您有效地将客户机限制为一个方法来检查一个项目是否处于活动状态。如果您以某种方式设计资源,使其代表所有可用信息,则客户端可以决定如何确定某个项目是否处于活动状态。您所说的“isActive”是什么意思?如果此状态(active:true/false)是业务逻辑的一部分,那么它应该只是响应的一个属性。请始终记住,REST(表示性状态传输)是关于表示应用程序的当前状态的
如果必须公开项目的状态,只需将其包含在响应中:
GET /api/items/1
{
"name": "First item",
"state": "inactive"
}
或者,您可以设计如下搜索:(我已经对空间进行了URL编码。)
如果没有具有活动状态且名称为“First item”的项,则应返回空集合
我不会在路由中加入太多的业务逻辑,比如一个特定的资源来检查一个项目是否处于活动状态,因为您有效地将客户机限制为一个方法来检查一个项目是否处于活动状态。如果您以某种方式设计资源,使其代表所有可用信息,客户端可以决定如何确定项目是否处于活动状态。我建议编写/api/v1/items/ping服务我建议编写/api/v1/items/ping服务可能应该是HEAD请求可能应该是HEAD请求