我们目前有一个大型 C# ServiceStack API 项目,用于我们系统中的所有服务。为了便于部署和测试,我想将其拆分为单独运行的较小 API。与Mike Hadlow所描述的非常相似。
但是,我不想使用 Nginx,而是使用 ServiceStack 作为反向代理。这个“外部”API 将处理身份验证问题,然后使用异步 HTTP REST 调用将任何传入请求转发到相关的内部 API。
但是,我将如何创建此服务转发器?假设我有一个接受 /hello 调用的内部 API。如果我尝试在外部 API 主机上创建自定义 ServiceRunner,我不能只拦截任何调用。它仍然期望某些路由存在,因此在外部 API 上调用 /hello 失败。我是否需要在外部 API 主机上创建虚拟 /hello 路由才能使用我自己的 ServiceRunner 拦截它们?看看 ServiceStack 的其余部分,我确信有一种更清洁的方法。
如果它仍然可以与 Swagger 结合使用,则可以加分 :)