我有一个应用程序,用户可以参与解谜事件。我有一个API端点/events/{id}
,用于获取与某个事件关联的数据。
根据事件是否已经结束,响应将有所不同:
如果事件已经结束,端点将返回事件名称、参与者、分数等,如果事件尚未结束,则返回状态代码200
在客户端,区分这两个响应以决定显示哪个页面、结果页面或事件页面的最佳方法是什么?这是实现我目标的好方法吗?
有些人可能会回答说,我应该已经在客户端知道事件是否已经结束,然后相应地查询数据。但是,如果用户使用地址栏导航到事件怎么办?那么我就没有任何数据可以知道,它是否真的结束了。我不想首先发出API调用来知道它已经结束了(没有),然后再为结果/谜题做另一个调用。
发布于 2021-05-02 02:57:18
传递一个布尔isFinished并在响应对象内部返回它。如果您的响应对象已经定义,请创建一个包装器,该包装器具有前面的响应dto和一个布尔标志。
另外,我们在一家大公司的工作项目中确实使用了这样的解决方案,所以我想说,这是业界公认的做法。
https://stackoverflow.com/questions/67338203
复制