【发布时间】:2023-03-22 15:15:02
【问题描述】:
在 ASP.Net Web API 中执行“基于内容的路由”的可能方式有哪些?它是否提供了 WCF (WCF Content based routing) 提供的开箱即用的东西
【问题讨论】:
-
我还没有看到任何允许这种情况发生的事情。 WebApi 的配置方式使其不会真正“检查”您发送的有效负载(因为您不能多次读取入站流)。你为什么不在控制器本身内有一个策略或其他东西来处理它?必须根据发送的有效负载扫描多个端点似乎很奇怪。
-
我认为这将是一个不错的功能,路由将基于客户端提供的 Content-Type 标头的内容(类似于基于 http 动词的路由已经完成,这只是另一个http标头)。一个旁注@Chris - 多次读取相同的有效负载很容易,它只是一个流。您只需要记住在完成后执行 request.InputStream.Seek(0, SeekOrigin.Begin)。