我有一个资源/消息。
在我的 java 代码中,Message 接口如下所示:
interface Message {
public int getID();
public int getPostingUserID();
public String getText();
public int getRelevance();
}
例如,/messages/7 将给出以下内容:
{ id: 7, postingUserID: 102, text: "tabs are better!", relevance: 10.3 }
不幸的是,getRelevance() 的即时计算非常昂贵,并且可能只需要十分之一的查询。当我不需要它时,我不想计算它。
所以,我可以看到几个选项:
- /messages/7?includeRelevance=true 告诉它计算相关性,否则不要在响应中包含它
- /messages/7/relevance 作为一个单独的请求,然后计算它
- /relevances?forMessageID=7 作为单独的请求,然后计算
哪个选项最 RESTful?
谢谢!