假设我们有一个RESTful API方法:
POST /people
{
"name" : "John",
"_links" : {
"address" : {
"href" : "/addresses/2"
}
}
}
您可以看到address
有一个指向其他资源的链接。
要解析该资源的address_id
,服务器是否应该:
分解网址并识别路线的“id”部分
甚至向自己发出一个卷曲请求,以获取该链接资源的address_id
?
答案 0 :(得分:1)
我觉得,正如你可能做的那样,#2是应该完成的方式,而#1只是基于内部知识的黑客攻击。如果客户端发送了一个绝对URI的href,http://yoursite.com/addresses/2你还想使用#1,并尝试检测ID,该怎么办? 让我们假设您的站点使用已定义和记录的MIME类型发送地址资源表示。如果客户端发送了指向第三方URI的href值,该URI也返回了该格式的响应,并且假设您想要支持该格式,该怎么办?无论如何你必须实现#2。在那种情况下,没有什么理由不将它用于您自己的(性能是主要的)。
老实说,我可能会做的就是#1,直到需要#2出现。