【问题标题】:iOS - UIWebview - Comments stripped over 3GiOS - UIWebview - 3G 上的评论被剥离
【发布时间】:2011-09-10 03:47:24
【问题描述】:

我正在请求包含 cmets 的 UIWebView 中的网页(它们是不可或缺的,因为它们包含 UIWebView 用来调整设置的隐藏信息)。

通过 Wifi 可以正常工作,但是通过 3G 从 UIWebView(使用 Javascript)查询源返回的输出中删除了所有空白和 cmets。

我的第一直觉是服务器在应用压缩,但客户端拒绝了,iOS 中是否有设置请求这个,或者 3G 网络运营商(在这种情况下为 O2 - UK)正在剥离内容.

有人看到这个,或者知道解决方案吗?

非常感谢!

【问题讨论】:

    标签: iphone ios uiwebview 3g-network


    【解决方案1】:

    确实是 ISP 剥离了 cmets ......我解决这个问题的方法是让客户端在页面内设置 JS 函数,返回最初隐藏在 cmets 中的响应(无论如何,这是一个更清洁的解决方案)。

    然后检索信息:

    [webView stringByEvaluatingJavaScriptFromString:@"functionName();"];
    

    【讨论】:

      【解决方案2】:

      您总是可以在 Firefox 中使用系留笔记本电脑进行测试,并将您的用户代理设置为 UIWebView 将发送的内容,例如:

      Mozilla/5.0 (iPhone; U; CPU OS 4_3_2 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Mobile
      

      然后您可以在浏览器中查看源代码。

      【讨论】:

        【解决方案3】:

        ISP 正在查看标头并删除 cmets 和空格以节省带宽。您可以使用自己的属性将此数据嵌入到标记标签中。例如:

        <div myDataAttr='id_123'>
         ...
        </div>
        

        编辑

        您也可以考虑使用HTML 5 custom data attributes

        <div data-id='123' data-name='John'>
        ...
        </div>
        

        【讨论】:

          猜你喜欢
          • 2014-07-19
          • 1970-01-01
          • 2011-04-04
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多