【问题标题】:Call javascript method with anonymous asynchronous method in Objective C在Objective C中使用匿名异步方法调用javascript方法
【发布时间】:2014-03-28 14:21:50
【问题描述】:

我想从目标 c 调用一个 javascript 方法,该方法将返回一些数据。我知道如何使用 JSContext 调用一个简单的方法。但问题是这个方法是通过 XmlHttpRequest 异步调用来下载文件的。我想访问下载的数据变量,但过一段时间就可以使用了。我怎样才能做到这一点。例如:

    function download(path)
{
    xhr.open("GET", path, true);
    xhr.responseType = "arraybuffer";
    //asynchronous method call
    xhr.onload = function () {
        var file = new Uint8Array(xhr.response || xhr.mozResponseArrayBuffer);

        var downloaded = populateImageData(file);
        //Want to access this variable in objective-c
        return downloaded.toString();
    };
    xhr.send(null);
}

如何在目标 c 中访问下载的变量

【问题讨论】:

    标签: javascript objective-c


    【解决方案1】:

    我已经解决了这个问题。我改变了这一行:

    xhr.open("GET", path, true);
    

    到这里:

    xhr.open("GET", path, false);
    

    现在它会同步下载文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-04-18
      • 1970-01-01
      • 2014-03-22
      • 1970-01-01
      • 1970-01-01
      • 2010-12-29
      • 2013-04-15
      • 1970-01-01
      相关资源
      最近更新 更多