0

我正在使用 iOS 7 的核心 javascript 库来尝试获取图像的 URL。我创建了一个从 URL 获取图像的请求,但我得到的是一些 javascript。从该 javascript 中,我想提取一个字符串,其中包含我要显示的图像的 URL。这是我用来获取 URL 的代码:

        NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:curURL]];
        NSString *javascriptString = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
        NSLog(@"data string = %@", javascriptString);

javascriptString 现在是:

<script>
var url = window.location.pathname + window.location.hash;
if(window.location.search && window.location.search.length > 1){
    url += window.location.search; // #189617
}



var loc = 'https://test.myURL.com/?ec=302&startURL='+encodeURIComponent(url);
window.location = loc;
</script>

从这里,我想得到 loc 变量

NSString *windowJS = [NSString stringWithFormat:@"var window = %@", curURL];
        JSContext *context = [[JSContext alloc] initWithVirtualMachine:[[JSVirtualMachine alloc] init]];
        [context evaluateScript:windowJS];
        [context evaluateScript:javascriptString];
        JSValue *locURL = context[@"loc"];
        NSLog(@"locURL: %@", locURL);

这个变量应该包含我想要显示的 jpg 图像的链接,但是我得到 locURL: undefined... 然后是一个错误。有没有办法设置窗口或任何其他解决方案来获取 loc var 的值?

4

1 回答 1

0

尝试在“loc”之前删除“var”,将其转换为全局变量。

于 2014-01-04T01:55:53.120 回答