在我的应用程序发送到第三方 SOA 服务器的数据中,有复杂的 XML。.xsd
服务器所有者确实提供了XML 模式(
我可以使用独立的 XML 模式验证器,但它们很慢,主要是因为解析模式文件需要时间。因此,我以HTTP 服务器的形式编写了自己的模式验证器(如果重要的话,用 Java),它缓存已经解析的模式。
问题是:在验证过程中,很多事情都可能出错。除了意外异常和成功验证:
- 服务器可能找不到指定的架构文件
- 指定的文件可能不是有效的架构文件
- XML 对架构文件无效
由于它是一个 HTTP 服务器,我想为客户端提供有意义的状态代码。对于上述所有情况,服务器是否应该以400错误(错误请求)回答?或者它们与 HTTP 无关,它应该在正文中回复200消息?还有什么建议吗?
更新:主应用程序是用Ruby编写的,它没有一个好的 xml 模式验证库,所以单独的验证服务器并没有过度设计。