我正在公开一个API,并从请求标头中提取了client
参数。
然后从业务逻辑中使用该参数,以将特定于客户的规则应用到连接层,在此驱动我将调用的外部系统。
我们正在与一位同事讨论是否应该使用请求范围的Bean存储此参数并使其在堆栈中的任何地方都可以使用,还是应该将此值作为方法参数传递给他人,还是混合使用两者。
请求范围的bean很简单-您存储值并可以在任何地方访问它。另一方面,通过不公开服务的实际参数来隐藏服务的实际需求。
在这种情况下是否有最佳做法?您将如何处理这种情况?
答案 0 :(得分:1)
我们最终要做的事情:
原因是横向服务通常需要各种各样的信息,并且通过业务层传递此信息会污染方法的要求,因为所有方法都必须接受相同的N个参数。