画像ファイルを読み込む際に、どのエンコーディングを使用する必要がありますか?私はイメージを持つhtmlファイルを提供するための基本的なサーバーを構築しています。私は 'utf-8'のエンコーディングでイメージファイルを読み込んでブラウザにデータを送ると、ブラウザはイメージを受信しません。ただし、エンコーディングを空の文字列({encoding: ''})に設定すると、ブラウザは画像を受信します。また、読み込みストリームオブジェクトを見ると、デフォルトのエンコーディングは 'utf-8'となっているので、なぜエンコーディングを 'utf-8'に設定するのがうまくいかないのだろうか?ここでファイルを読むときにどのようなエンコーディングを使用するかを知るには?
は動作しないコードの一部です:
let readStream = fs.createReadStream('./static/002.jpg', {flags: 'r', encoding: 'utf8'})
console.log('ReadStream: ', readStream)
res.setHeader('Content-Type', 'image/jpeg')
readStream.on('data', (chunk) => {
res.write(chunk)
})
readStream.on('error', (err) => {
console.log(err)
})
readStream.on('end',() => {
console.log('Image stream ended')
res.end()
})
readStream.on('close', function(){
console.log("Image Stream closed")
})
そして、ここで作業を行うコードの一部です:
let readStream = fs.createReadStream('./static/002.jpg', {flags: 'r', encoding: ''})
console.log('ReadStream: ', readStream)
res.setHeader('Content-Type', 'image/jpeg')
readStream.on('data', (chunk) => {
res.write(chunk)
})
readStream.on('error', (err) => {
console.log(err)
})
readStream.on('end',() => {
console.log('Image stream ended')
res.end()
})
readStream.on('close', function(){
console.log("Image Stream closed")
})