xml - 使用 HTTP 多部分检索大型 XML 文件以进行验证

标签 xml http xsd multipart xml-validation

我们正在开发一个框架来处理网络服务之间的大型 XML 文件。每个 XML 都包含代表我们数据的实体列表,与特定用户查询相关。在响应中将有 SAME 实体类型,每个响应都应使用预定义的 XSD 进行验证。

因为 XML 响应可能相当大,我们希望使用“分页”机制,例如,如果响应应包含 6000 个实体,我们会在内存中创建 3 个“页面”并仅发送前 2000 个实体带有用户应该请求的下一页的哈希值。

但后来有人建议我们使用 HTTP 多部分规范,所以我开始阅读,我想我明白了如何使用它,但我不明白服务器响应是否包含我可以通过 XSD 验证的整个主体,或者是就像 body 刚刚被切割的“分块” react ?

最佳答案

HTTP multipart 是 XML 验证级别下的协议(protocol),它纯粹根据 XML 文档定义。一旦收到,您将像往常一样将 XML 作为整个文档进行验证。 (无论如何,Multipart 不会像您想象的那样按元素分解 XML 文档。)这与将文件系统中的 XML 文档作为一个整体文件进行验证没有什么不同,而不管它在磁盘上的物理存储方式如何。您的 HTTP 库将处理为您提供传输的 XML 文档的详细信息,并且您将像往常一样在文件上调用验证 XML 解析器。

关于xml - 使用 HTTP 多部分检索大型 XML 文件以进行验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36245386/

相关文章:

sockets - 详解http保活机制

ruby - 拦截 WEBrick 请求

xml - 为什么人们接受 XSD 需要特定顺序的元素?

java - 想要在我的 Android 应用程序中显示密码切换/可见按钮

c# - 使用命名空间处理 C# XML 反序列化

java - 如何在recyclerView中为textview(非常非常长的文本)自动水平滚动设置动画

django - 如何在 Django 上使用 Daphne 2.0 服务静态媒体

proxy - 从 XSD 生成类型/类的参数化构造函数

xml - XSD:一个元素应允许采用不同的形式

java - 抽屉导航项目在左侧没有采用适当的 paddin