【问题标题】:what different message encodings does WCF use and in which scenarios?WCF 使用哪些不同的消息编码以及在哪些情况下使用?
【发布时间】:2014-07-13 18:24:36
【问题描述】:

我是 WCF、SOAP 的新手。我在 MSDN 和其他门户网站上搜索过,但没有得到合适的答案。如果我问一些愚蠢的问题,请原谅我,但我真的需要弄清楚这些。

我从这些帖子中得到了一些帮助。仍然很想知道更多。

Does WCF always use SOAP to send information over your binding?

WCF service, response in SOAP or plain XML, how?

我了解 SOAP 是一种消息传递协议(基于 XML),并且消息 b/w WCF 服务和客户端主要以 SOAP 编码进行编码,然后反序列化为点网对象。

不同的绑定支持不同的消息传递协议。这是否意味着 SOAP 不用于 netTcpBinding、namedPipeBinding 和 msmqBinding?而是使用二进制消息,并且 XML 不会在任何地方出现。这是否也意味着在这种情况下我们将无法使用 XMLSerializers?我假设这是真的,因为这些绑定的目的不是互操作性。

我读到 basicHttpBinding 使用简单的文本编码。那么这是否意味着 SOAP(或 XML)在这种情况下也不会出现?

我的脑子里一片混乱。非常感谢您的帮助。

谢谢!!

【问题讨论】:

    标签: asp.net web-services wcf soap wcf-binding


    【解决方案1】:

    是不是说netTcpBinding、namedPipeBinding和msmqBinding都没有使用SOAP?而是二进制消息

    正确。

    我读到 basicHttpBinding 使用简单的文本编码。

    你在哪里读到的?“简单文本编码”是什么?

    那么这是否意味着 SOAP(或 XML)在这种情况下也不会出现?

    没有。 BasicHttpBinding 使用 SOAP 1.1,WSHttpBinding 使用 SOAP 1.2。

    这是否也意味着在这种情况下我们将无法使用 XMLSerializers?

    解释“使用”。

    【讨论】:

    • 感谢您的帮助。我在 msdn msdn.microsoft.com/en-us/library/ms730879(v=vs.110).aspx 上读到,basicHttpBinding 将使用 text/xml。请原谅我使用术语简单文本编码。我的困惑是它会只使用 text/xml 还是也可能有肥皂编码?如果是,是否可以选择 b/w soap 和 text/xml?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-02
    相关资源
    最近更新 更多