【问题标题】:xml to wbxml conversion for activesync in iOSxml 到 wbxml 的转换,用于 iOS 中的 activesync
【发布时间】:2013-09-12 16:07:23
【问题描述】:

我一直在尝试构建一个与 MS-ActiveSync Exchange 通信的应用程序。我被困在供应部分。我需要在正文中发送带有 WBXML 内容的 post HTTP 请求。但是我在任何地方都找不到任何东西可以将 xml 转换为 wbxml 以进行主动同步。

有一些可用的基于 C 的库,如 wbxml2,但我可以将它们用于主动同步吗?如 MS-Activesync Exchange 文档中所述,库中没有提供代码页。请帮忙!!!

【问题讨论】:

    标签: xcode ios6 activesync wbxml


    【解决方案1】:

    使用 libwbxml。该包有 xml2wbxml 和 wbxml2xml。包括代码页。

    将此保存为 prov.xml:

    <?xml version="1.0"?>
    <!DOCTYPE ActiveSync PUBLIC "-//MICROSOFT//DTD ActiveSync//EN" "http://www.microsoft.com/">
    <Provision xmlns="Provision:">
    <Policies>
    <Policy>
    <PolicyType>MS-WAP-Provisioning-XML</PolicyType>
    </Policy></Policies></Provision>
    

    然后:

    xml2wbxml -a prov.xml -o prov.wbxml
    

    您可以将 wbxml 作为文本进行操作。 在https://code.google.com/p/tz-push/

    在javascript中:

     prov.wbxml = string.fromCharCode(0x03,0x01,0x6A,0x00,0x00,0x0E,0x45,0x46,0x47,0x48,0x03,0x4D,0x53,0x2D,0x57,0x41,0x50,0x2D,0x50,0x72,0x6F,0x76,0x69,0x73,0x69,0x6F,0x6E,0x69,0x6E,0x67,0x2D,0x58,0x4D,0x4C,0x00,0x01,0x01,0x01,0x01)
    

    【讨论】:

    • 我提供了上面提供的 xml 字符串。然后我使用 'wbxml_conv_xml2wbxml_withlen(xml, xml_len, &wbxml, &wbxml_len, &params);'函数来获取 wbxml 文件。但它没有给出正确的 wbxml。你在哪里使用 Xcode 项目中的 'xml2wbxml -a prov.xml -o prov.wbxml' 函数。
    • 我配置了一个 Exchange Server,我正在尝试测试来自 iOS 应用程序的身份验证。从一个视图来看,用户应输入电子邮件、用户名和密码,我想发出请求只是为了验证用户身份。你能给我一些指导吗?
    【解决方案2】:

    wbxml2xml 和 xml2wbxml 是包含在 libwbxml 中的命令行程序。我对IOS开发一无所知。

    看看https://tz-push.googlecode.com/files/towbxml.js是用js写的xml到wbxml的转换器。 (可以在 Thunderbird/Workspace 或 Firefox/Sratchpad 中运行。)我知道这不是您想要的,但代码可能会为您指明正确的方向。它使用萨克斯。所以如果你有一个可用的 sax 解析器应该很容易移植。

    【讨论】:

      猜你喜欢
      • 2013-09-29
      • 2014-10-16
      • 2012-07-18
      • 2012-06-08
      • 2013-03-26
      • 1970-01-01
      • 1970-01-01
      • 2013-03-08
      • 1970-01-01
      相关资源
      最近更新 更多