在这种情况下......我有一个端点/v1/orders/{order_id}
,它返回一个JSON blob,其中包含有关产品订单的所有必要信息。如果未找到订单,则返回404错误。订单完成后,可以在/v1/orders/{order_id}/product
下载产品(简单文本文件)。如果产品尚未得到保护,那么该端点将返回404。
对我来说,如果您导航到/v1/orders/{order_id}/product
以获取无效的订单ID,您会收到404错误,这似乎很奇怪。这种情况看起来可能是订单ID正确但产品尚未公布。
您认为最好的方法是让这更有意义。
答案 0 :(得分:0)
如果产品发现但端点不安全,则端点不应返回404。您可以返回自定义错误代码,可能在200或500范围内,或者使用您认为最适合您的预定义错误代码;例如:
请求已被接受处理,但处理尚未完成。 [...]
服务器已完成请求但不需要返回实体主体。 [...]
由于与资源的当前状态发生冲突,无法完成请求。 [...]
有关HTTP状态代码的the RFC 2616中的详细信息。
答案 1 :(得分:-1)
创建一个自定义404页面,其中包含一条消息和一个返回主产品页面的链接。
即。 “抱歉,您要查找的产品或页面目前无法使用。点击此处返回产品页面”