UNPKG

ts-api-core

Version:

Nodejs api framework core

58 lines (57 loc) 1.94 kB
import { ClassType } from '../base/type'; import { BaseController } from '../controller/base.controller'; import { SaveLogger } from '../base/logger'; import { RouteConfig } from '../base/route.config'; import { RoutesRegister } from '../base/routes.register'; import { BaseWrapper } from '../wrapper/base.wrapper'; import { IocLoadOptions } from '../mvc/ioc.load.options'; /** 服务配置 */ export declare class ServerConfig { /** 服务监听端口, ,默认 `8080` */ port?: number; /** 服务名称 */ name?: string; /** 控制器注册 */ controller?: ClassType<BaseController>[]; /** 可执行的 wrapper 注册 */ wrappers?: Map<string, ClassType<BaseWrapper<any>>>; /** 路由配置信息注册 */ routes?: ClassType<RouteConfig>[]; /** 设置允许的自定义HTTP请求头 */ allowHeader?: string[]; /** 是否允许跨域,默认 `true` */ allowCrossDomain?: boolean; /** 日志写入, 默认 `MysqlLogger` */ logger?: SaveLogger; /** 限制 Body 大小, 默认 `10000kb` */ limitBodySize?: string; /** 限制 Url 大小, 默认 `10000kb` */ limitUrlSize?: string; /** 设置 etag,默认 `false` */ setETag?: boolean; /** 接口地址 */ apiBaseUrl?: string; /** 自动扫描加载选项 */ loadOpts?: IocLoadOptions; } /** WEB 服务 */ export declare class WebServer { readonly options: ServerConfig; private static _express; private static get express(); readonly registerRoutes: RoutesRegister; /** 服务监听端口 */ readonly port: number; /** * WEB 服务 * @param options 配置选项 */ constructor(options: ServerConfig); private isController; private isRouteConfig; private isWrapper; private ConfigCors; private ConfigAction; private Config404; private Config500; }