我正在编写一个Web API,该API将根据收到请求时应用的逻辑来代理或处理请求。
我可以通过控制器轻松处理请求。而且我可以像这样轻松地代理请求(在Startup :: Configure中):
builder.RunProxy(new ProxyOptions
{
Scheme = "https",
Host = "q11ws.zzzzzzz.com",
Port = "443"
}));
只要我在管道的早期添加上述“ MapWhen”,就可以使用它而不是与控制器匹配。但是,如果要与控制器匹配,则需要注释掉上面的内容并重新编译,或者移至管道的后面。
我需要做的是插入一些逻辑,以便在收到请求时(而不是在启动/编译时)确定是否将代理与代理进行匹配。
(注意:如果答案是“使用自定义中间件”,那么我将在那儿有关于代理的后续问题。这就是我上面提到的方法很简单。)