我有一个名为“bel”的外部独立 python 包,它带有自己的 CLI 脚本,它使用我的基于 Falcon 的 REST API 来执行诸如验证术语库中的术语之类的事情。我还在 REST API 中使用这个包来支持大多数 REST API 功能。
当我尝试从 API 内运行的 bel 模块函数调用 API,而不是单独使用 bel 模块函数时,它无法访问 API 端点。
我添加了一个带有以下内容的 try/except 子句,以区分我在什么模式下运行“bel”函数(在 API 服务内部或外部):
try: # try to import API module and run call directly
import <API module>
...
except ModuleNotFoundError as e:
# call API via requests module as I'm running bel outside of API
这是正确的方法吗?有没有更好的办法?我有 API 代码污染了我的独立 bel 包代码这样做,两者之间的依赖关系比我想要的要强。
我什至不确定描述我的情况的最佳方式是抑制我寻找好答案的能力。