gpt4 book ai didi

.net - ColdFusion 网络服务的 SOAP 响应结构

转载 作者:行者123 更新时间:2023-12-04 07:07:49 26 4
gpt4 key购买 nike

我创建的 ColdFusion 网络服务有问题。该服务接受 XML 数据、Base64 编码,然后将其写入磁盘以进行存档。然后,此文件会进行基本架构检查,并将任何错误报告给用户,如下所示:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<UploadXMLResponse xmlns="http://url">
<UploadXMLReturn>
<AuthMessage>Authentication successful</AuthMessage>
<AuthStatus>Success</AuthStatus>
<FileInfo>File Example.xml was successfully uploaded</FileInfo>
<UploadStatus>Success</UploadStatus>
<xmlValErrors>
<xmlValErrors xsi:type="xsd:string">1824</xmlValErrors>
<xmlValErrors xsi:type="xsd:string">Error Message</xmlValErrors>
<xmlValErrors xsi:type="xsd:string">23</xmlValErrors>
<xmlValErrors xsi:type="xsd:string">1824</xmlValErrors>
<xmlValErrors xsi:type="xsd:string">Error Message</xmlValErrors>
<xmlValErrors xsi:type="xsd:string">38</xmlValErrors>
</xmlValErrors>
<xmlValMessage>Schema validation generated errors</xmlValMessage>
<xmlValStatus>Failure</xmlValStatus>
</UploadXMLReturn>
</UploadXMLResponse>
</soapenv:Body>
</soapenv:Envelope>

问题在于 <xmlValErrors>元素以一种稍微奇怪的方式嵌套。这是由于 ColdFusion 处理错误数组的方式。结果是,当用户尝试分析响应时,他们只能看到初始 <xmlValErrors>元素。

.Net 在这里似乎是一个特别的问题,因为它看到了 <xmlValErrors> element 作为一个空数组,即使它显然包含许多其他元素。

我怀疑问题在于在 <xmlValErrors> 中的子元素上重用名称。元素。但是,我无法在 ColdFusion 中找到解决此问题的方法。

关于如何解决这个问题的想法将不胜感激。

最佳答案

你是如何访问 xmlValErrors 的?因为您的错误数组在父 xmlVarErrors 中,所以您希望像这样访问它:

上传xmlreturn.xmlvarerrors.xmlvarerrors

第一个 xmlvarerrors 指向父级,第二个指向错误数组。

有道理?

关于.net - ColdFusion 网络服务的 SOAP 响应结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/862760/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com