multer
を使用してファイルをアップロードした後、ページをリダイレクトするときに問題が発生します。ファイルのアップロードでは、私もいくつかのテキストをデータベースに保存しています。ここに私のコードです。multerを使用してページをアップロードしてリダイレクト
質問:
ファイルと内容が、私は新しいURLにページをリダイレクトする方法をDBに保存されますか?
私は現在res.redirect('product/item');
を使用していますが、何も起こりません。私もres.render
を使ってみましたが、ページはリダイレクトされませんでした。
Multer
方法はAmazon S3
var upload = multer({
storage: multerS3({
s3: s3,
bucket: 'nameofthebucket',
metadata: function (req, file, cb) {
var ext = file.originalname.split('.').pop();
cb(null, {fieldName: 'file.fieldname' + '.' + ext});
},
filename: function(req,file,cb){
var ext = file.originalname.split('.').pop();
cb(null, Date.now() + '.' + ext);
},
key: function (req, file, cb) {
var ext = file.originalname.split('.').pop();
cb(null, Date.now() + '.' + ext);
}
})
})
var upload = upload.array('fileup', 10);
DBにレコードを保存しますファイルやコンテンツ
router.post('/uploadfileandcontent',function(req,res,next){
upload(req,res,function(err) {
if(err) {
} else {
saveRecordsToDB(req, function(err,data){
if (err) {
res.redirect('/errorpage');
} else {
res. redirect('product/item');
}
});
}
});
});
機能をアップロードする責任コードにファイルをアップロードしますコールバック
function saveRecordsToDB (req, callback){
var args = {
data: {
"name" : req.body.name, //
"age" : req.body.age
},
headers: { "Content-Type": "application/json" }
};
// registering remote methods
client.registerMethod("postMethod", "http://url/uploadfileandcontent", "POST");
var req =client.methods.postMethod(args, function (data, response) {
callback(null, 'success?');
});
req.on('error', function (err) {
console.log('error');
});
}
注:httpリクエストを送信するためにNODE REST CLIENTも使用しました。
は、私はそれを試してみますよ。 HTMLページから 'msg'をどのように取得することができますか? – Illep
詳細を更新しました – agaezcode