将响应数据加载到Web视图Titanium中

时间:2013-05-24 05:39:02

标签: titanium titanium-mobile titanium-alloy

我从Web服务获得了响应数据,这是base64binary数据。 我想将这个base64binary数据加载到钛合金[版本3.1.0.2]的Web视图中。 数据base64binary是pdf文件。

Ti.API.info('Status  is ::',xhrDocument.status);
var ResponseData = xhrDocument.getResponseXML().getElementsByTagName('GetDocResult').item(0).text;  
var file = Titanium.Filesystem.getFile(Titanium.Filesystem.applicationDataDirectory,'pdfbinarray.pdf');
if(xhrDocument.status == 200){ 
    var file = Titanium.Filesystem.getFile(Titanium.Filesystem.applicationDataDirectory, 'filename2.pdf');                   file.write(xhrDocument.getResponseXML().getElementsByTagName('GetDocResult').item(0).text);
                              Titanium.API.info('file write');
                              Titanium.API.info(file.size);
}

上面的代码在我的Documents目录中创建了filename2.pdf。当我使用Adobe Reader打开文件时,它表示Adobe Reader无法打开filename2.pdf,因为它不是有效文件或已损坏(例如,它是作为电子邮件附件发送的,未被正确解码)。

1 个答案:

答案 0 :(得分:0)

Web服务调用仅返回文档,还是响应中包含其他数据?

我们使用更简单的方法取得了成功。如果服务只是返回文档,请尝试将第二行更改为更像这样的内容:

    var ResponseData =  xhrDocument.responseText;