我需要在我的iOS应用程序中规范化xml文件(使用c14n标准)以进行签名验证,但我无法在iOS SDK中找到可帮助我执行此操作的API。 XML Canonicalization API canonicalXMLStringPreservingComments仅适用于MacOS。在iOS上有没有像XOM这样的等效API或第三方库?
所以,我找到了使用libxml2的解决方案。 libxml2包含XML Canonicalization(c14n)所需的API,您可以找到它的文档here。
libxml2在iOS SDK中可用。要在Xcode项目中添加库:
目标 - >构建阶段 - >链接二进制与库 单击“+”按钮并搜索“libxml2.tbd”
您还需要将以下内容添加到项目的构建设置中:
其他链接器标志:-lxml2 标题搜索路径:$(SDKROOT)/ usr / include / libxml2
要在Swift类中访问libxml2,只需添加:
import libxml2