我正在努力将 HTML 模板传递到 VerifyAddItem 的描述标签中。这是我正在使用的错误消息:
ebaysdk [ERROR]:VerifyAddItem: Class: RequestError, Severity: Error, Code: 20170, Schema XML request error. Schema XML request error: SimpleDeserializer encountered a child element, which is NOT expected, in something it was trying to deserialize..
关于如何实现这一点的文档很少。按照官方的 AddItem文档,我尝试将原始 html 文本包装在“<![CDATA[”+description_html_string +“]]”中。这样做会给我一个不同的错误:
ebaysdk [ERROR]:VerifyAddItem: Class: RequestError, Severity: Error, Code: 5, XML Parse error. XML Error Text: "; nestedexception is: org.xml.sax.SAXParseException: XML document structures must start and end within the same entity.".
我正在使用 JSON 为 API 调用构建我的有效负载,所以我什至不确定是否需要执行上述操作^。我知道我的有效载荷工作正常。只需将我的描述替换为如下所示的纯文本即可,即 VerifyAddItem API 调用成功:
"Item"{
...
"Description" : "boring non html template description :("
...
}
使用更简单的 html 片段设置 Description 标记,如下所示:
"<p> asdfasdfasd asdfasdf </p>"
也会产生相同的错误。
我知道我的 python 代码返回有效的 html,因为我已经在浏览器上运行了 HTML,它看起来很棒。此外,它不超过docs中指定的最大字符数。我已经尝试关注此页面,但他们的建议没有奏效。这让我相信这不是我的 HTML 的问题,而是我如何与 API 交互的问题。
我是 XML 的初学者。有没有人遇到过这些问题并可以提供帮助?关于我所遇到的错误,我至少想要更多的上下文。返回的错误对我来说不是很清楚。如果可能的话,我希望答案更适合 eBay SDK/Trading API,我的有效负载中是否缺少标签或其他什么?