5.65.9 • Published 2 years ago

@tsed/multipartfiles v5.65.9

Weekly downloads
1,644
License
MIT
Repository
github
Last release
2 years ago

@tsed/multipartfiles

A package of Ts.ED framework. See website: https://romakita.github.io/ts-express-decorators/

Installation

Before using the @MultipartFile() you must install multer module on your project:

npm install --save multer @types/multer @tsed/multipartfiles

Then import @tsed/multipartfiles in your ServerLoader:

import {ServerLoader, ServerSettings} from "@tsed/common";
import "@tsed/ajv"; // import ajv ts.ed module
import Path = require("path");
const rootDir = Path.resolve(__dirname);

@ServerSettings({
   rootDir: __dirname,
   uploadDir: `${rootDir}/custom-dir`,                                    
   multer: {
      // see multer options
   }
})
export class Server extends ServerLoader {

}

By default the directory used is ${projetRoot}/uploads. You can configure another directory on your ServerLoader settings.

Options

  • dest (string): The destination directory for the uploaded files.
  • storage (`StoreEngine): The storage engine to use for uploaded files.
  • limits (Object): An object specifying the size limits of the following optional properties. This object is passed to busboy directly, and the details of properties can be found on https://github.com/mscdex/busboy#busboy-methods.
    • fieldNameSize (number): Max field name size (Default: 100 bytes).
    • fieldSize (number): Max field value size (Default: 1MB).
    • fields (number): Max number of non- file fields (Default: Infinity).
    • fileSize (number): For multipart forms, the max file size (in bytes)(Default: Infinity).
    • files (number): For multipart forms, the max number of file fields (Default: Infinity).
    • parts (number): For multipart forms, the max number of parts (fields + files)(Default: Infinity).
    • headerPairs (number): For multipart forms, the max number of header key => value pairs to parse Default: 2000(same as node's http).
    • preservePath (boolean): Keep the full path of files instead of just the base name (Default: false).

Example

Ts.ED use multer to handler file uploads. Single file can be injected like this:

import {Controller, Post} from "@tsed/common";
import {Multer} from "@types/multer";

type MulterFile = Express.Multer.File;

@Controller('/')
class MyCtrl {
    
  @Post('/file')
  private uploadFile(@MultipartFile() file: MulterFile) {

  }
     
  @Post('/file')
  private uploadFile(@MultipartFile({dest: "/other-dir"}) file: MulterFile) {
         
  }
}

For multiple files, just add Array type annotation like this:

import {Controller, Post} from "@tsed/common";
import {Multer} from "multer";
import {MultipartFile} from "@tsed/multipartfile";

type MulterFile = Express.Multer.File;

@Controller('/')
class MyCtrl {
  @Post('/files')
  private uploadFile(@MultipartFile() files: MulterFile[]) {

  }
}
5.67.2

2 years ago

5.66.0

3 years ago

5.67.0

3 years ago

5.65.10

4 years ago

5.65.9

4 years ago

5.65.8

4 years ago

5.65.7

4 years ago

5.65.6

4 years ago

5.65.5

4 years ago

5.65.4

4 years ago

5.65.3

4 years ago

6.0.0-alpha.18

4 years ago

6.0.0-alpha.17

4 years ago

6.0.0-alpha.16

4 years ago

5.65.2

4 years ago

6.0.0-alpha.15

4 years ago

6.0.0-alpha.14

4 years ago

6.0.0-alpha.13

4 years ago

5.65.1

4 years ago

6.0.0-alpha.12

4 years ago

5.65.0

4 years ago

6.0.0-alpha.11

4 years ago

5.64.0

4 years ago

5.64.2

4 years ago

5.64.1

4 years ago

6.0.0-alpha.10

4 years ago

5.63.1

4 years ago

5.63.0

4 years ago

5.62.6

4 years ago

5.62.5

4 years ago

6.0.0-alpha.9

4 years ago

6.0.0-alpha.6

4 years ago

6.0.0-alpha.7

4 years ago

6.0.0-alpha.8

4 years ago

5.62.4

4 years ago

6.0.0-alpha.5

4 years ago

6.0.0-alpha.4

4 years ago

6.0.0-alpha.1

4 years ago

6.0.0

4 years ago

5.62.3

4 years ago

5.62.2

4 years ago

5.62.1

4 years ago

5.62.0

4 years ago

5.61.4

4 years ago

5.61.3

4 years ago

5.61.1

4 years ago

5.61.0

4 years ago

5.60.7

4 years ago

5.60.6

4 years ago

5.60.5

4 years ago

5.60.4

4 years ago

5.60.3

4 years ago

5.60.2

4 years ago

5.60.1

4 years ago

5.60.0

4 years ago

5.59.4

4 years ago

5.59.3

4 years ago

5.59.2

4 years ago

5.58.2

4 years ago

5.58.1

4 years ago

5.59.1

4 years ago

5.59.0

4 years ago

5.58.0

4 years ago

5.57.7

4 years ago

5.57.6

4 years ago

5.57.5

4 years ago

5.57.4

4 years ago

5.57.3

4 years ago

5.57.1

4 years ago

5.57.2

4 years ago

5.57.0

4 years ago

5.56.0

4 years ago

5.54.6

4 years ago

5.54.4

4 years ago

5.54.5

4 years ago

5.55.0

4 years ago

5.54.3

4 years ago

5.54.2

4 years ago

5.54.1

4 years ago

5.54.0

4 years ago

5.53.1

4 years ago

5.53.0

4 years ago

5.52.3

4 years ago

5.52.2

4 years ago

5.51.0

4 years ago

5.52.0

4 years ago

5.52.1

4 years ago

5.50.0

4 years ago

5.49.2

4 years ago

5.49.1

4 years ago

5.49.0

4 years ago

5.47.1

4 years ago

5.48.0

4 years ago

5.47.0

4 years ago

5.46.0

4 years ago

5.45.4

4 years ago

5.45.3

4 years ago

5.45.2

4 years ago

5.45.1

4 years ago

5.45.0

4 years ago

5.44.17

4 years ago

5.44.16

4 years ago

5.44.15

4 years ago

5.44.14

4 years ago

5.44.13

4 years ago

5.44.12

4 years ago

5.44.11

4 years ago

5.44.10

4 years ago

5.44.9

4 years ago

5.44.8

4 years ago

5.44.7

4 years ago

5.44.6

4 years ago

5.44.5

4 years ago

5.44.4

4 years ago

5.44.3

4 years ago

5.44.2

4 years ago

5.44.1

4 years ago

5.44.0

4 years ago

5.43.1

4 years ago

5.43.0

4 years ago

5.42.3

4 years ago

5.42.2

4 years ago

5.42.1

4 years ago

5.42.0

4 years ago

5.41.2

4 years ago

5.41.1

4 years ago

5.41.0

4 years ago

5.40.1

4 years ago

5.39.3

4 years ago

5.40.0

4 years ago

5.39.2

4 years ago

5.39.1

4 years ago

5.39.0

4 years ago

5.38.6

4 years ago

5.38.7

4 years ago

5.38.4

4 years ago

5.38.5

4 years ago

5.38.3

4 years ago

5.38.2

4 years ago

5.38.1

4 years ago

5.38.0

4 years ago

5.37.1

4 years ago

5.37.0

4 years ago

5.36.2

4 years ago

5.36.1

4 years ago

5.35.3

4 years ago

5.36.0

4 years ago

5.34.10

4 years ago

5.35.1

4 years ago

5.35.2

4 years ago

5.35.0

4 years ago

5.34.9

4 years ago

5.34.8

4 years ago

5.34.7

4 years ago

5.34.6

4 years ago

5.34.5

4 years ago

5.34.4

4 years ago

5.34.3

4 years ago

5.34.2

4 years ago

5.34.1

5 years ago

5.34.0

5 years ago

5.33.5

5 years ago

5.33.4

5 years ago

5.33.3

5 years ago

5.33.2

5 years ago

5.33.0

5 years ago

5.32.2

5 years ago

5.32.1

5 years ago

5.32.0

5 years ago

5.31.4

5 years ago

5.31.3

5 years ago

5.31.2

5 years ago

5.31.1

5 years ago

5.31.0

5 years ago

5.30.0

5 years ago

5.29.0

5 years ago

5.28.3

5 years ago

5.28.2

5 years ago

5.28.1

5 years ago

5.28.0

5 years ago

5.27.5

5 years ago

5.27.4

5 years ago

5.27.3

5 years ago

5.27.2

5 years ago

5.27.1

5 years ago

5.27.0

5 years ago

5.26.0

5 years ago

5.25.1

5 years ago

5.25.0

5 years ago

5.24.2

5 years ago

5.24.1

5 years ago

5.24.0

5 years ago

5.23.0

5 years ago

5.22.0

5 years ago

5.21.1

5 years ago

5.21.0

5 years ago

5.20.1

5 years ago

5.20.0

5 years ago

5.19.1

5 years ago

5.19.0

5 years ago

5.18.2

5 years ago

5.18.1

5 years ago

4.34.4

5 years ago

5.18.0

5 years ago

5.17.1

5 years ago

5.17.0

5 years ago

5.16.0

5 years ago

5.15.0

5 years ago

5.14.1

5 years ago

5.14.0

5 years ago

5.13.0

5 years ago

5.12.1

5 years ago

5.12.0

5 years ago

5.11.0

5 years ago

5.10.0

5 years ago

5.9.0

5 years ago

5.8.0

5 years ago

5.7.1

5 years ago

5.7.0

5 years ago

5.6.1

5 years ago

5.6.0

5 years ago

5.5.0

5 years ago

5.4.0

5 years ago

5.3.0

5 years ago

5.2.5

5 years ago

5.2.4

5 years ago

5.2.3

5 years ago

5.2.2

5 years ago

5.2.1

5 years ago

5.2.0

5 years ago

5.1.3

5 years ago

5.1.2

5 years ago

5.1.1

5 years ago

5.1.0

5 years ago

5.0.9

5 years ago

5.0.8

5 years ago

5.0.7

5 years ago

5.0.6

5 years ago

5.0.5

5 years ago

5.0.4

5 years ago

5.0.3

5 years ago

5.0.2

5 years ago

5.0.1

5 years ago

4.34.3

5 years ago

4.34.2

5 years ago

4.34.1

5 years ago

4.34.0

5 years ago

4.33.1

5 years ago

4.33.0

5 years ago

4.32.4

5 years ago

4.32.3

5 years ago

4.32.2

5 years ago

4.32.1

5 years ago

4.32.0

6 years ago

4.31.13

6 years ago

4.31.12

6 years ago

4.31.11

6 years ago

4.31.10

6 years ago

4.31.9

6 years ago

4.31.8

6 years ago

4.31.7

6 years ago

4.31.6

6 years ago

4.31.5

6 years ago

4.31.4

6 years ago

4.31.3

6 years ago

4.31.2

6 years ago

4.31.1

6 years ago

4.31.0

6 years ago

4.30.6

6 years ago

4.30.5

6 years ago

4.30.4

6 years ago

4.30.3

6 years ago

4.30.2

6 years ago

4.30.1

6 years ago

4.30.0

6 years ago

4.29.1

6 years ago

4.29.0

6 years ago

4.28.0

6 years ago

4.27.3

6 years ago

4.27.2

6 years ago

4.27.1

6 years ago

4.27.0

6 years ago

4.26.4

6 years ago

4.26.3

6 years ago

4.26.2

6 years ago

4.26.1

6 years ago

4.26.0

6 years ago

4.25.0

6 years ago

4.24.0

6 years ago

4.23.2

6 years ago

4.23.1

6 years ago

4.23.0

6 years ago

4.22.1

6 years ago

4.22.0

6 years ago

4.21.0

6 years ago

4.20.3

6 years ago

4.20.2

6 years ago

4.20.1

6 years ago

4.20.0

6 years ago

4.19.1

6 years ago

4.19.0

6 years ago

4.18.0

6 years ago

4.17.7

6 years ago

4.17.6

6 years ago

4.17.5

6 years ago

4.17.4

6 years ago

4.17.3

6 years ago

4.17.2

6 years ago

4.17.1

6 years ago

4.17.0

6 years ago

4.16.0

6 years ago

4.15.2

6 years ago

4.15.1

6 years ago

4.15.0

6 years ago

4.14.4

6 years ago

4.14.3

6 years ago

4.14.2

6 years ago

4.14.1

6 years ago

4.14.0

6 years ago

4.13.8

6 years ago

4.13.7

6 years ago

4.13.6

6 years ago

4.13.5

6 years ago

4.13.4

6 years ago

4.13.3

6 years ago

4.13.2

6 years ago

4.13.1

6 years ago

4.13.0

6 years ago

4.12.4

6 years ago

4.12.3

6 years ago

4.12.2

6 years ago

4.12.1

6 years ago

4.12.0

6 years ago

4.11.0

6 years ago

4.10.5

6 years ago

4.10.4

6 years ago

4.10.3

6 years ago

4.10.2

6 years ago

4.10.1

6 years ago

4.10.0

6 years ago

4.9.1

6 years ago

4.9.0

6 years ago

4.8.1

6 years ago

4.8.0

6 years ago

4.7.2

6 years ago

4.7.1

6 years ago

4.7.0

6 years ago

4.6.0

6 years ago

4.5.4

6 years ago

4.5.3

6 years ago

4.5.2

6 years ago

4.5.1

6 years ago

4.5.0

6 years ago

4.4.2

6 years ago

4.4.1

6 years ago

4.4.0

6 years ago

4.3.0

6 years ago

4.2.0

6 years ago

4.1.0

6 years ago

4.0.7

6 years ago

4.0.6

6 years ago

4.0.5

6 years ago

4.0.4

6 years ago

4.0.1

6 years ago

5.0.0

6 years ago

4.0.0

6 years ago

4.0.0-beta1

6 years ago

3.10.2

6 years ago