我将人json对象发布到休息服务,该服务负责创建对象并将其存储在数据库中。但我有两种情况需要处理。
我可以使用相同的网址吗... www.mysite.com/people/并让服务器确定它是一个人还是一群人?我知道我可以在技术上做到这一点,但我应该如何处理这种情况并仍然有RESTful设计?
答案 0 :(得分:1)
是。 “POST”是一种通配符,可以“逃脱”任何东西。您不想做的是将此资源与底层资源混淆。您不希望POST / people,而不是特定于该任务的内容。
因此,您需要/ people_loader这样的任务返回流程的显式结果(/ people_loader / 1234),这是一个链接到您刚创建的新人的资源。
/ people是您的基本资源,因此/ people_loader结果将是/ people链接的集合,也可能是那些未加载的对象的其他信息(对错误或其他约束做)。