UNPKG

node-web-mvc

Version:
51 lines (50 loc) 1.32 kB
/** * @module Resource * @description 静态资源对象 */ import fs from 'fs'; import { ServerResponse } from 'http'; import { Readable } from 'stream'; export interface InputStream extends Readable { close: () => void; } export default class Resource { readonly stat: fs.Stats; /** * 获取当前文件明 */ readonly url: string; /** * 当前资源内容长度 */ get contentLength(): number; /** * 最后修改时间 */ get lastModified(): number; /** * 获取当前文件的mediaType */ get mediaType(): import("../..").MediaType; get isReadable(): boolean; constructor(filename: string); createRelative(relativePath: string): Resource; /** * 获取当前资源的读取流 */ getInputStream(): InputStream; /** * 获取当前资源,指定位置的读取流 * @param start * @param end */ getInputRangeStream(start: number, end: number): InputStream; /** * 将资源文件附加到response * @param response 原始返回对象 * @param start 如果是http-ragen则设置开始位置 * @param end 如果是http-ragen则设置结束位置 * @returns */ pipe(response: ServerResponse, start?: number, end?: number): Promise<unknown>; }