【问题标题】:Sencha Touch JSONPinclude via https doesn't work on some android devices通过 https 的 Sencha Touch JSONPinclude 在某些 android 设备上不起作用
【发布时间】:2012-03-06 15:45:42
【问题描述】:

我有一个 scripttag 代理,可以从远程 https url 读取 json 数据。在模拟器、iPhone 和一些安卓设备上它可以工作。但是有些 Android(HTC Desire 和 Motrola Milestone,我不知道)不起作用。

Kunde.js 节选

proxy: {
    type: 'scripttag',
    url: API_URL + 'getKundenListe',
    reader: {
        type: 'json',
        root: 'kunden'
    },
    listeners: {
        exception: function(proxy, request, operation) {
            alert('exception during scripttag proxy operation');
        }
    }
},

该异常始终显示在该 android 设备上。

通过 debug.phonegap.com 我发现远程设备将这个脚本标签添加到了 head 部分:

<script src="https://apps.kdo.de/wuakz/json/getKundenListe?_dc=1329298561166&limit=25&callback=stcCallback1001" async="true" type="text/javascript" id="stcScript1001"></script>

在不工作的设备上,脚本标签在头部是两次。

此请求的响应如下所示:

stcCallback1001({"kunden":[{"kdnr":"0100","bezeichnung":"Stadt Oldenburg","kuerzel":"OL"}],"status":"ok"})

我还在 AndroidManifest 中添加了 INTERNET 权限。

关于如何找出问题的任何想法?

【问题讨论】:

    标签: android cordova sencha-touch jsonp script-tag


    【解决方案1】:

    如果您使用phonegap,则无需使用scripttag proxy。您可以使用ajax proxy,它会起作用,因为它不在浏览器中运行,所以没有这样的安全约束。

    【讨论】:

    • 感谢您的回答。我想使用 scripttag 代理为 webapp 提供相同的代码库。在 Android 2.3 上一切正常,因此我将最低 Api 级别设置为该版本。
    • 感谢您提供有关 Android 2.3 的信息。
    【解决方案2】:

    要关闭它: 它在升级到 Android 2.3 时有效。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-06-27
      • 1970-01-01
      • 2014-09-20
      • 2015-03-11
      • 1970-01-01
      • 2015-05-17
      • 1970-01-01
      相关资源
      最近更新 更多