我使用“WCF REST Starter Kit”项目模板将基于 SOAP 的 WCF Web 服务项目转换为基于 REST 的项目。我的核心代码没有改变,只有从 SOAP 到 REST 的包装器。客户说它有效,他们可以使用数据。伟大的。
问题:客户说特殊字符破坏了他们的 XML 解析器,而 SOAP 中没有。前任:
<SomeItem>Simon & Simon</SomeItem>
...这里的&符号是问题。客户端正在使用 Java 客户端,但目前我不确定是哪个客户端。
由于 SOAP 版本运行良好,在我的代码或 .config 中我需要做些什么特别的事情吗?也许是一种编码规范?(我知道我可以编写一个清理器方法,在返回结果之前用编码版本替换有问题的字符,但我希望有一个内置的编码规范设置等)。
编辑:我的坏例子。事实证明 & 被 WCF REST 正确编码。什么不是:
<UnitOfMeasure>°F</UnitOfMeasure>
...我认为它没有被编码,因为°符号不是 XML/HTML 语法的一部分,因此不需要编码来防止无效的语法。据我了解。
谢谢,马特