Node を使用して、受信した画像を取得して Mongo の GridFS に保存する、すばやく簡単な画像アップロード サービスを構築しようとしています。
GridFS get には Buffer オブジェクトが必要NodeJS Mongo Driver GridFS put
質問は非常に単純です。受信したリクエスト本文を適切なバッファーに正確にキャスト/変換するにはどうすればよいですか。
これまでの私のコード (重要な部分のみ): api.js
var express = require('express');
var connect = require('connect');
var app = module.exports = express.createServer();
app.configure(function(){
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(app.router);
});
var upload = require('./upload.js');
app.post('/upload', upload.upload);
upload.js
exports.upload = (function(req, res, next){
console.log("Uploading image...");
// Create buffer
// Rest of the code
}
私はもう試した:
var buffer = new Buffer(util.inspect(req.body),'binary');
バッファーを作成しますが、util.inspect は明らかに正しい方法ではないため、サイズが正しくなく、おそらく正しい内容ではありません。
そして: var buffer = new Buffer(req.body); 結果:
[Decode error - output not utf-8][Decode error - output not utf-8]
バッファ長 = 0
私は一般的に Node と JavaScript の両方の開発にまったく慣れていないので、おそらく非常に単純なものが欠けている可能性があります。
ありがとう!