Express フレームワークを使用し、アップロードに multer ミドルウェアを使用しようとしました。結果として、最も基本的なアップロードである
var Upload = multer({ dest: 'uploads/' }) であることがわかりました。このアップロード ファイルはすべて、サフィックス名のない 16 ビットのランダムな文字列です。私の要件はファイルの命名を標準化することなので、multer.diskStorage を使用してファイルに対してさらに操作を実行しました。コードは次のとおりです:
`var Express = require('express');
var router =express.Router();
var multer = require('multer');
//保存パスを設定します
//var Upload = multer({ dest: 'uploads/' })
/ ホームページを取得します。 /
router.get('/', function(req, res, next) {
res.render('index', { title: '急行' });###});###
var storage = multer.diskStorage({
});
var Upload = multer({ storage: storage });
router.post('/upload', Upload.single('image')), function(req, res, next){
リーリー}
module.exports = router;
`これは最も基本的なデモであるはずだと思いますが、500 エラーが報告されるだけです。エラーは次のとおりです:
リーリー
インターネットや github でたくさんの情報を読みましたが、理由が見つからないような気がします。アドバイスをお願いします。
500はサーバーエラーです、app.jsの45行目が間違っています、
res.send('index', { title : 'Express' ,image:image});
、ファイルをブラウザに転送しますか?長い間作業した後、pugテンプレートを使用し、後で変更したため、デフォルトのerror.jadeが表示されません。宛先によって設定されたパスは、ディレクトリのルートディレクトリから始まります。たとえば、/uploads と書きました。ストレージパスは D://uploads です。そのようなフォルダーは存在しないため、修正するだけで問題ありません。