将 XML 作为字符串传递给 Web 服务会导致完全失败

本文关键字:服务 失败 Web XML 字符串 | 更新日期: 2023-09-27 17:56:22

我正在托管一个用 c# 编写的 .net Web 服务。在我的一种 Web 方法中,我期待一些入站参数,所有这些都是字符串。最后一个字符串实际上是一串 xml(我开始为此做一个数据集,但读到这是一个很大的禁忌,所以选择了这条路)。

xml(作为字符串)非常简单。

<FriendsArray><Friend><FriendSocialID>123456789</FriendSocialID><FriendName>Test Test</FriendName><AvatarImage>https://www.imagelocation.com</AvatarImage><FriendGender></FriendGender></Friend></FriendsArray>

<FriendsArray>是 bounder,<Friend>节点重复 n 次。在 Web 服务端,我获取此字符串,将其序列化为 xml 并处理数据。

当Web服务在Visual Studio中的服务器上本地运行时,它可以完美运行,没有问题。当 Web 服务在本地运行并附加到测试调用程序时,该程序只是模拟将这些参数(包括 FriendArray )传递给 Web 服务,同样,就像下雨一样,没有问题,可以完美运行。

调用外部 Web 服务的真实场景(通过仿真,如 SoapUI 或 XMLSpy,或直接从要调用它的应用程序)它会轰炸服务。不返回错误,或返回空响应对象,它完全失败,并且不返回任何内容。

第二次我删除这个朋友阵列(它在代码隐藏中是可选的),它运行良好。

以我尝试的方式执行此操作是否存在一些固有问题?如果是这样,是否有一种不需要大量重新编码的简单替代方法?谢谢!

将 XML 作为字符串传递给 Web 服务会导致完全失败

显然"<"和">"在XML中保留。不知道这一点。我所要做的就是用绳子里的&lt;&gt;逃离他们,现在它工作得很好。