Options
All
  • Public
  • Public/Protected
  • All
Menu

A node stream transformer, that would transform a buffer stream into a stream of parsed MultipartItem objects

const contentType = request.headers['content-type'];
const parser = new MultipartParser(toMultipartBoundary(contentType));
const response = new Readable();

pipeline(request, parser, response);

Hierarchy

  • Transform
    • MultipartParser

Index

Constructors

Properties

allowHalfOpen: boolean
boundary: Buffer
destroyed: boolean
headers: string = ''
readable: boolean
readableEncoding: null | BufferEncoding
readableEnded: boolean
readableFlowing: null | boolean
readableHighWaterMark: number
readableLength: number
readableObjectMode: boolean
remainingChunk: undefined | Buffer
state: State = State.Start
writable: boolean
writableCorked: number
writableEnded: boolean
writableFinished: boolean
writableHighWaterMark: number
writableLength: number
writableObjectMode: boolean
captureRejectionSymbol: typeof captureRejectionSymbol
captureRejections: boolean

Sets or gets the default captureRejection value for all emitters.

defaultMaxListeners: number
errorMonitor: typeof errorMonitor

This symbol shall be used to install a listener for only monitoring 'error' events. Listeners installed using this symbol are called before the regular 'error' listeners are called.

Installing a listener using this symbol does not change the behavior once an 'error' event is emitted, therefore the process will still crash if no regular 'error' listener is installed.

Methods

  • [asyncIterator](): AsyncIterableIterator<any>
  • Returns AsyncIterableIterator<any>

  • _destroy(error: null | Error, callback: (error: null | Error) => void): void
  • Parameters

    • error: null | Error
    • callback: (error: null | Error) => void
        • (error: null | Error): void
        • Parameters

          • error: null | Error

          Returns void

    Returns void

  • _final(callback: (error?: null | Error) => void): void
  • Parameters

    • callback: (error?: null | Error) => void
        • (error?: null | Error): void
        • Parameters

          • Optional error: null | Error

          Returns void

    Returns void

  • _flush(callback: TransformCallback): void
  • Parameters

    • callback: TransformCallback

    Returns void

  • _read(size: number): void
  • Parameters

    • size: number

    Returns void

  • _transform(chunk: Buffer, encoding: BufferEncoding, done: TransformCallback): void
  • Transform incomming chunks into MultipartItem[].

    We are either parsing http header, that are new line terminated, or the body, which is terminated by the boundary string. That's why we need to keep track which state we're currently in.

    Depending on the state, for each index in the buffer we check for the termination string, and if matches, save eithere the header or the body.

    All operations are performed with buffer.slice, which does not allocate new memory for the objects.

    Parameters

    • chunk: Buffer
    • encoding: BufferEncoding
    • done: TransformCallback

    Returns void

  • _write(chunk: any, encoding: BufferEncoding, callback: (error?: null | Error) => void): void
  • Parameters

    • chunk: any
    • encoding: BufferEncoding
    • callback: (error?: null | Error) => void
        • (error?: null | Error): void
        • Parameters

          • Optional error: null | Error

          Returns void

    Returns void

  • _writev(chunks: { chunk: any; encoding: BufferEncoding }[], callback: (error?: null | Error) => void): void
  • Parameters

    • chunks: { chunk: any; encoding: BufferEncoding }[]
    • callback: (error?: null | Error) => void
        • (error?: null | Error): void
        • Parameters

          • Optional error: null | Error

          Returns void

    Returns void

  • Event emitter The defined events on documents including:

    1. close
    2. data
    3. end
    4. error
    5. pause
    6. readable
    7. resume

    Parameters

    • event: "close"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "data"
    • listener: (chunk: any) => void
        • (chunk: any): void
        • Parameters

          • chunk: any

          Returns void

    Returns MultipartParser

  • Parameters

    • event: "end"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "error"
    • listener: (err: Error) => void
        • (err: Error): void
        • Parameters

          • err: Error

          Returns void

    Returns MultipartParser

  • Parameters

    • event: "pause"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "readable"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "resume"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: string | symbol
    • listener: (...args: any[]) => void
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns MultipartParser

  • cork(): void
  • Returns void

  • Parameters

    • Optional error: Error

    Returns MultipartParser

  • emit(event: "close"): boolean
  • emit(event: "data", chunk: any): boolean
  • emit(event: "end"): boolean
  • emit(event: "error", err: Error): boolean
  • emit(event: "pause"): boolean
  • emit(event: "readable"): boolean
  • emit(event: "resume"): boolean
  • emit(event: string | symbol, ...args: any[]): boolean
  • Parameters

    • event: "close"

    Returns boolean

  • Parameters

    • event: "data"
    • chunk: any

    Returns boolean

  • Parameters

    • event: "end"

    Returns boolean

  • Parameters

    • event: "error"
    • err: Error

    Returns boolean

  • Parameters

    • event: "pause"

    Returns boolean

  • Parameters

    • event: "readable"

    Returns boolean

  • Parameters

    • event: "resume"

    Returns boolean

  • Parameters

    • event: string | symbol
    • Rest ...args: any[]

    Returns boolean

  • Parameters

    • Optional cb: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • chunk: any
    • Optional cb: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • chunk: any
    • Optional encoding: BufferEncoding
    • Optional cb: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • eventNames(): (string | symbol)[]
  • Returns (string | symbol)[]

  • getMaxListeners(): number
  • Returns number

  • isPaused(): boolean
  • Returns boolean

  • listenerCount(event: string | symbol): number
  • Parameters

    • event: string | symbol

    Returns number

  • listeners(event: string | symbol): Function[]
  • Parameters

    • event: string | symbol

    Returns Function[]

  • off(event: string | symbol, listener: (...args: any[]) => void): MultipartParser
  • Parameters

    • event: string | symbol
    • listener: (...args: any[]) => void
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns MultipartParser

  • Parameters

    • event: "close"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "data"
    • listener: (chunk: any) => void
        • (chunk: any): void
        • Parameters

          • chunk: any

          Returns void

    Returns MultipartParser

  • Parameters

    • event: "end"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "error"
    • listener: (err: Error) => void
        • (err: Error): void
        • Parameters

          • err: Error

          Returns void

    Returns MultipartParser

  • Parameters

    • event: "pause"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "readable"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "resume"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: string | symbol
    • listener: (...args: any[]) => void
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns MultipartParser

  • Parameters

    • event: "close"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "data"
    • listener: (chunk: any) => void
        • (chunk: any): void
        • Parameters

          • chunk: any

          Returns void

    Returns MultipartParser

  • Parameters

    • event: "end"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "error"
    • listener: (err: Error) => void
        • (err: Error): void
        • Parameters

          • err: Error

          Returns void

    Returns MultipartParser

  • Parameters

    • event: "pause"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "readable"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "resume"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: string | symbol
    • listener: (...args: any[]) => void
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns MultipartParser

  • Returns MultipartParser

  • pipe<T>(destination: T, options?: { end?: boolean }): T
  • Type parameters

    • T: WritableStream<T>

    Parameters

    • destination: T
    • Optional options: { end?: boolean }
      • Optional end?: boolean

    Returns T

  • prependListener(event: "close", listener: () => void): MultipartParser
  • prependListener(event: "data", listener: (chunk: any) => void): MultipartParser
  • prependListener(event: "end", listener: () => void): MultipartParser
  • prependListener(event: "error", listener: (err: Error) => void): MultipartParser
  • prependListener(event: "pause", listener: () => void): MultipartParser
  • prependListener(event: "readable", listener: () => void): MultipartParser
  • prependListener(event: "resume", listener: () => void): MultipartParser
  • prependListener(event: string | symbol, listener: (...args: any[]) => void): MultipartParser
  • Parameters

    • event: "close"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "data"
    • listener: (chunk: any) => void
        • (chunk: any): void
        • Parameters

          • chunk: any

          Returns void

    Returns MultipartParser

  • Parameters

    • event: "end"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "error"
    • listener: (err: Error) => void
        • (err: Error): void
        • Parameters

          • err: Error

          Returns void

    Returns MultipartParser

  • Parameters

    • event: "pause"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "readable"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "resume"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: string | symbol
    • listener: (...args: any[]) => void
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns MultipartParser

  • prependOnceListener(event: "close", listener: () => void): MultipartParser
  • prependOnceListener(event: "data", listener: (chunk: any) => void): MultipartParser
  • prependOnceListener(event: "end", listener: () => void): MultipartParser
  • prependOnceListener(event: "error", listener: (err: Error) => void): MultipartParser
  • prependOnceListener(event: "pause", listener: () => void): MultipartParser
  • prependOnceListener(event: "readable", listener: () => void): MultipartParser
  • prependOnceListener(event: "resume", listener: () => void): MultipartParser
  • prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): MultipartParser
  • Parameters

    • event: "close"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "data"
    • listener: (chunk: any) => void
        • (chunk: any): void
        • Parameters

          • chunk: any

          Returns void

    Returns MultipartParser

  • Parameters

    • event: "end"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "error"
    • listener: (err: Error) => void
        • (err: Error): void
        • Parameters

          • err: Error

          Returns void

    Returns MultipartParser

  • Parameters

    • event: "pause"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "readable"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "resume"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: string | symbol
    • listener: (...args: any[]) => void
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns MultipartParser

  • push(chunk: any, encoding?: BufferEncoding): boolean
  • Parameters

    • chunk: any
    • Optional encoding: BufferEncoding

    Returns boolean

  • rawListeners(event: string | symbol): Function[]
  • Parameters

    • event: string | symbol

    Returns Function[]

  • read(size?: number): any
  • Parameters

    • Optional size: number

    Returns any

  • Parameters

    • Optional event: string | symbol

    Returns MultipartParser

  • Parameters

    • event: "close"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "data"
    • listener: (chunk: any) => void
        • (chunk: any): void
        • Parameters

          • chunk: any

          Returns void

    Returns MultipartParser

  • Parameters

    • event: "end"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "error"
    • listener: (err: Error) => void
        • (err: Error): void
        • Parameters

          • err: Error

          Returns void

    Returns MultipartParser

  • Parameters

    • event: "pause"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "readable"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: "resume"
    • listener: () => void
        • (): void
        • Returns void

    Returns MultipartParser

  • Parameters

    • event: string | symbol
    • listener: (...args: any[]) => void
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns MultipartParser

  • Returns MultipartParser

  • Parameters

    • encoding: BufferEncoding

    Returns MultipartParser

  • Parameters

    • encoding: BufferEncoding

    Returns MultipartParser

  • Parameters

    • n: number

    Returns MultipartParser

  • uncork(): void
  • Returns void

  • Parameters

    • Optional destination: WritableStream

    Returns MultipartParser

  • unshift(chunk: any, encoding?: BufferEncoding): void
  • Parameters

    • chunk: any
    • Optional encoding: BufferEncoding

    Returns void

  • Parameters

    • oldStream: ReadableStream

    Returns MultipartParser

  • write(chunk: any, encoding?: BufferEncoding, cb?: (error: undefined | null | Error) => void): boolean
  • write(chunk: any, cb?: (error: undefined | null | Error) => void): boolean
  • Parameters

    • chunk: any
    • Optional encoding: BufferEncoding
    • Optional cb: (error: undefined | null | Error) => void
        • (error: undefined | null | Error): void
        • Parameters

          • error: undefined | null | Error

          Returns void

    Returns boolean

  • Parameters

    • chunk: any
    • Optional cb: (error: undefined | null | Error) => void
        • (error: undefined | null | Error): void
        • Parameters

          • error: undefined | null | Error

          Returns void

    Returns boolean

  • from(iterable: Iterable<any> | AsyncIterable<any>, options?: ReadableOptions): Readable
  • A utility method for creating Readable Streams out of iterators.

    Parameters

    • iterable: Iterable<any> | AsyncIterable<any>
    • Optional options: ReadableOptions

    Returns Readable

  • listenerCount(emitter: EventEmitter, event: string | symbol): number
  • deprecated

    since v4.0.0

    Parameters

    • emitter: EventEmitter
    • event: string | symbol

    Returns number

  • on(emitter: EventEmitter, event: string): AsyncIterableIterator<any>
  • Parameters

    • emitter: EventEmitter
    • event: string

    Returns AsyncIterableIterator<any>

  • once(emitter: NodeEventTarget, event: string | symbol): Promise<any[]>
  • once(emitter: DOMEventTarget, event: string): Promise<any[]>
  • Parameters

    • emitter: NodeEventTarget
    • event: string | symbol

    Returns Promise<any[]>

  • Parameters

    • emitter: DOMEventTarget
    • event: string

    Returns Promise<any[]>

Generated using TypeDoc