我最近正在开发一个应用程序,并且有一个用例,我向客户端返回一组响应,例如 ALLOW、DENY 和 PENDING。
假设服务返回的响应是 PENDING,我希望客户端在给定时间间隔后重试。这个间隔由服务器给出。
我想知道围绕这种用例建模我的服务响应的最佳实践是什么。我想有这样的回应:
字符串决定;长重试间隔时间;
但是对于决定 ALLOW 和 DENY,retryIntervalInMinutes 没有意义,不应返回。
对此建模的一种方法:
决策 - 抽象类 Allow 扩展决策 Deny 扩展决策 Pending 扩展决策
只有 Pending 对象将包含 retryIntervalInMinutes。
但这有其自身的问题,例如客户端如何在不使用 instanceof 或类型转换等的情况下破译这样的响应。
或者有没有其他更好的方法来模拟这种反应?