0

我正在尝试使用 WCF REST 入门工具包中的 RequestInterceptor 实现反向代理。我能够设置基本的标头属性并配置调用。我陷入了以下几个方面:

  1. 返回适当的响应 - 我的 web 服务可以返回 text+xml、image 或 json。我无法发送适当的响应类型。Message.CreateMessage 重载都是 SOAP 对齐的,即它们只接受 Xml 构造,因此我无法发送 JSON 或图像流。我需要将它们转换为 XElements - 我在这里肯定做错了什么。

  2. 我还希望反向代理在存在 cookie、gzip/deflate 和 SSL 的情况下运行良好。

基于以上需求,您认为使用 REST starter kit 来做这件事有意义吗?Requestinterceptor 很容易插入,但是其余的代码让我抓狂。

4

1 回答 1

0

JSON 和任意二进制内容到 XML 之间都有映射,XML 用于 WCF 的消息(请参阅http://blogs.msdn.com/b/carlosfigueira/archive/2011/04/19/wcf-extensibility中的一些示例-message-inspectors.aspx),因此您也可以使用 Message.CreateMessage 创建非 XML 消息。

话虽如此,到目前为止,在 WCF 中执行此操作确实不直观。WCF Web API 中的新库 - http://wcf.codeplex.com - 提供了一种非常好的拦截/重定向/绕过 WCF 管道的方法,特别是针对 HTTP 消息。此外,它以本机方式支持多种格式(即,无需映射到 XML)。

于 2011-05-19T05:52:17.807 回答