UNPKG

@mt-utils/mt-sse

Version:

明途SSE请求工具

67 lines (66 loc) 1.9 kB
/** * SSE链接服务器的头部信息 */ interface SSEHeaders { [key: string]: string; /** * 指定请求和响应遵循的缓存机制,默认为no-cache */ 'cache-control': string; /** * 指定连接是否应该在此次请求之后保持打开状态,默认为keep-alive */ Connection: string; /** * 描述了主体部分的内容类型,默认为application/json */ 'content-type': string; /** * 用来指示资源的内容所用的语言,默认为ZH */ Language: string; } /** * event-source的请求方法,默认为POST */ type SSEMethod = 'POST' | 'GET' | 'DELETE' | 'PUT'; /** * 回调函数 */ type SSECallBack = (obj?: any) => void; /** * 事件类型 * start: 开始连接,回调参数为连接成功后的response * close: 连接关闭,每次正常连接完毕都会触发,无回调参数 * message: 接收到服务器返回的消息(返回对象type为112时触发),回调参数为返回的数据对象 * error: 连接错误,回调参数为SSEError对象 * end: 接收到最后一条数据(返回对象type为114时触发),回调参数为返回的数据对象 */ type SSEventType = 'start' | 'close' | 'message' | 'error' | 'end'; /** * SSEClient 配置项 * headers: 请求头信息,默认为{cache-control:no-cache,Connection:keep-alive,content-type:application/json,Language:zh} * method: 请求方法,默认为POST */ type SSEClientOptions = { headers?: SSEHeaders; method?: SSEMethod; }; /** * message 响应数据的状态码 */ export declare enum SSECodeStatus { /** * 响应数据正常 */ NORMAL = "112", /** * 响应数据表示触发太多次违规 */ BAN = "100", /** * 最后一条响应数据 */ END = "114" } export type { SSEHeaders, SSECallBack, SSEventType, SSEMethod, SSEClientOptions };