1

base64binary データである Web サービスからの応答データを取得しました。この 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);
}

上記のコードにより、ドキュメント ディレクトリに filename2.pdf が作成されました。Adobe Reader を使用してファイルを開くと、有効なファイルではないか破損している (たとえば、電子メールの添付ファイルとして送信され、正しくデコードされていない) ため、Adobe Reader で filename2.pdf を開けませんでしたと表示されます。

4

1 に答える 1

0

Web サービス呼び出しはドキュメントのみを返しますか、それとも応答に追加データが含まれていますか?

より簡単な方法を使用して成功しました。サービスがドキュメントを返すだけの場合は、2 行目を次のように変更してみてください。

    var ResponseData =  xhrDocument.responseText; 
于 2013-05-24T14:12:05.960 に答える