ファイルのアップロードはおそらくすべてのプロジェクトで必須の操作です。今日では、nodejs を使用してファイル アップロード モジュールを実装します。
1. モジュール
npm i multiparty
npm iexpress
2.
コードを ( upload.js
) ファイルに配置します。 ファイル内のコードは次のとおりです。
// ファイルをアップロードする module const multiparty = require('multiparty') //ファイル操作モジュール const fs = require('fs') //Express フレームワークをインポートする const Express = require('express') //ルーティング const router =express.Router() // ファイルをアップロードするインターフェース router.post('/upload/file', (req, res) => { /* マルチパーティ オブジェクトを生成し、アップロード ターゲット パスを構成します */ let form = new multiparty.Form(); //エンコーディングを設定します form.encoding = 'utf-8'; //現在編集中のファイルを相対パスとしてファイルの保存パスを設定します form.uploadDir = './public'; // 解析、フォームパーサー // フィールド: 通常のフォームデータ // ファイル: アップロードされたファイル情報 form.parse(req, function (err, field, files) { 試す { // ファイルは files.file[0] です let upfile = files.file[0] // ファイルに名前を付け、upfile ファイル内のパスを変更します。それ以外の場合、ファイル名はランダムに生成されます let newpath = form.uploadDir + '/' + upfile.originalFilename //ファイル名// Rename fs.renameSync(upfile.path) 、新しいパス); //情報を返します、((upfile.size)/1048576).toFixed(2) ファイルを B 単位から M 単位に変換し、小数点以下 2 桁に四捨五入します。 コード:200、 msg:'ファイル成功', ファイル名:アップファイル.オリジナルファイル名、 file_size:((upfile.size)/1048576).toFixed(2)+'M' }) } キャッチ { // 異常な状況下でメッセージ console.log(err) res.send({ コード:401、 msg:'ファイルエラー', more_msg: エラー }) } }) }) // メイン関数ファイルで呼び出すためにこのモジュールをエクスポートします module.exports = router
3.main.js ファイル
// Express モジュールを導入します const Express = require('express') // エクスプレスをインスタンス化します const app = Express() // フォルダーマッピング app.use('/static',express.static('public')) // アップロード ファイル インターフェイス const Upload=require('./router/upload') app.use(アップロード) // リスニングサービス app.listen('3333', '0.0.0.0', (res) => { console.log('http://127.0.0.1:3333 を実行しているサーバー') })
4. 例
たたき落とす