hinos-bodyparser

2.2.8 • Public • Published

hinos-bodyparser

A plugin helps parse request body for hinos

Installation

npm i hinos-bodyparser -S

Examples

Typescript

import { GET, POST, PUT, DELETE, HEAD } from 'hinos-route';
import { BODYPARSER } from 'hinos-bodyparser';
 
export default class ChartController {
    @PUT('/chart/:id')
    @BODYPARSER([{
        autoCreate?: true, //[Boolean] Auto create folder if not existed
        mimes: string, //Can inject data by string or fix string mime type. "() => `${state.config.ext}`" or 'jpg|png|.*'
        limits: {
            fileSize: number|string//Can inject data by string or fix string mime type. "() => state.config.maxSize" or 1024 (1MB)
        },
        returnType?: String; // [String] return only path, [Object] return full object file
        returnPath?: string; // Return path after uploaded. Can inject "() => `upload/${state.auth.projectId}`" or "images/"
        name: 'images'; // Field name
        uploadDir?: string // absolute path where file will be saved to. Can inject "() => `assets/upload/${state.auth.projectId}`" or 'assets/images'
        maxCount?: number|string // Max file can be uploaded. can inject "() => state.config.maxFile" or 3(max number of files upload)
        resize?: [ // Auto resize image base on your configuration here
            {w: -1000 }, // Auto resize origin when width > 1000. If width < 1000 do nothing
            {w: 32, h: 32, ext: 'thumb'},
            {w: 224, h: 200, ext: 'list.pc'},
            {w: 358, h: 200, ext: 'list.tab'},
            {w: 270, h: 200, ext: 'list.mob'}
        ] // Can inject "() => state.config.resize"
    }])
    static async add({
        body, params
    }) {
        body.id = params.id; // Assign body data to params which is got from client
        return body; // Return request body which is got from client
    }
}

Readme

Keywords

none

Package Sidebar

Install

npm i hinos-bodyparser

Weekly Downloads

1

Version

2.2.8

License

ISC

Unpacked Size

49.8 kB

Total Files

16

Last publish

Collaborators

  • doanthuanthanh88