2017-08-14 2 views
2

Im expressアプリケーションでjsftpを使用すると、正常に動作しているFTP接続からのイメージの文字列表現が提供されます。ただし、クライアントに送信すると画像が表示されません。クライアント側で画像の文字列表現を表示するには

router.get('/', (req, res, next) => { 
    let str = '' 
    ftp.get('/uploads/test.png', function (err, socket) { 
     if (err) return 
     socket.on('data', function (d) { str += d.toString() }) 
     socket.on('close', function (hadErr) { 
     if (hadErr) { 
      console.error('There was an error retrieving the file.') 
     } 
     res.writeHead(200, { 'Content-Type': 'image/png' }) 
     res.end(str, 'binary') 
     }) 
     socket.resume() 
    }) 
}) 

ご協力いただきありがとうございます。

答えて

1

FTP接続でdebugMode: trueを試して、デバッグイベントを聞いて、接続中にエラーがないかどうかを確認できます。

+1

ええ、私はそれをしました。 ftp接続に問題はありません。それは期待どおりに動作しないイメージの書き込みです。 – JazzBrotha

+0

ウォッチャーをvar strに入れて、値が得られているかどうか確認しましたか? –

+0

はい、 'str.length' = 12612 – JazzBrotha