1

我们在 SOAP 正文中发送 xml,因此我们将 xml 标记替换为<,>&lt;&&gt;一切都很好,直到我们遇到撇号。

这个 XML 很好:

&lt;ScemaLocation:Name _FirstName='John' _LastName='OBarber' /&gt;

但是这个抛出了一个错误,因为它的姓氏中有撇号:

&lt;ScemaLocation:Name _FirstName='John' _LastName='O'Barber' /&gt;

我们尝试了以下所有选项,但没有任何帮助

  • O'Barber=>O&apos;Barber
  • O'Barber=>O/'Barber
  • O'Barber=>O<![CDATA[']]>Barber
  • O'Barber=>O&lt;![CDATA[']]&gt;Barber
  • O'Barber=><![CDATA[O'Barber]]>
  • O'Barber=>O&lt;CDATA[O'Barber]]&gt;
  • O'Barber=>O&#39;Barber

请帮我解决这个问题。

4

1 回答 1

0

我们有两个选项来解决这个问题

选项 1:ScemaLocation:Name _FirstName='John' _LastName='O'Barber'; 选项 2:我们将整个内部 xml 放在 CData 部分。所以不需要用 < 替换 < 并且我们可以使用常规转义序列 ' as ' 所以在我们的例子中是 O'Barber

希望这可能对其他人有用。谢谢!

于 2013-03-22T15:08:37.387 回答