我可以将加密的二进制流量发送到WCF中继吗?如果没有,为什么不呢?

时间:2018-07-16 08:14:01

标签: azure wcf azure-servicebusrelay

我正在尝试使用Azure WCF中继将加密的AS2消息发送到本地托管的BizTalk WCF终结点。我已经确认中继器已连接到接收器侧,并且已经能够向其发送基于垃圾文本的消息,并确认这些消息已到达接收器。

我正在工作的AS2发送者是带有AS2编码器和HTTP发送操作的Azure逻辑应用程序。这可以与第三方提供的另一个真实的AS2接收器一起使用。消息经过加密和签名,并以application/pkcs7-mime; smime-type=enveloped-data; name=\"smime.p7m\"的内容类型和binary的内容传输编码进行传输。

这将产生SOAP错误作为响应,错误代码名称空间为http://schemas.microsoft.com/netservices/2009/05/servicebus/relay。这很好地向我确认是中继返回此错误。本地方面什么都没有出现。我尝试了BasicHttpRelayBinding(应该使用SOAP)和WebHttpRelayBinding(根据我的理解,应该接受任何东西)。都不行。

发送到WCF中继的消息是否必须为SOAP消息?如果是这样,我将如何在其中嵌入此二进制内容,以便可以将其解压缩并在另一侧作为“常规” AS2处理?否则,这会奏效吗,还是我在这里成为失败者?

1 个答案:

答案 0 :(得分:0)

如果要通过WcfRelay发送非SOAP通信,请使用WebHttpRelayBinding。

示例: https://github.com/Azure/azure-relay/tree/master/samples/wcf-relay/RelayHttp