UNPKG

@farris/bef-vue

Version:
48 lines (47 loc) 1.7 kB
import { HttpClient, HttpHeaders, Injector } from '@farris/devkit-vue'; import { SessionHandlingStrategy } from './handling-strategy'; import { SessionStorageStrategy } from '../storage-strategies'; import { FrameworkSessionService } from '../../framework-session.service'; import { RuntimeContext } from '../../types'; /** * 会话复用场景下会话处理策略 */ export declare class BefUnifiedSessionHandlingStrategy extends SessionHandlingStrategy { protected injector: Injector; /** * 构造函数 */ constructor(storageStrategy: SessionStorageStrategy, frameworSessionService: FrameworkSessionService, httpClient: HttpClient, baseUrl: string, injector: Injector); /** * 获取会话复用的session id * @param runtimeContext runtime context */ getSessionId(runtimeContext: RuntimeContext): Promise<string>; /** * 设置session id * @param sessionId session id * @param runtimeContext runtime context */ setSessionId(sessionId: string, runtimeContext: RuntimeContext): void; /** * 清空session id * @param runtimeContext runtime context */ clearSessionId(runtimeContext: RuntimeContext): void; /** * 处理请求header * @param headers * @param runtimeContext runtime context */ handleRequestHeaders(headers: HttpHeaders, runtimeContext?: RuntimeContext): HttpHeaders; /** * 处理返回header * @param headers */ handleReponseHeaders(headers: HttpHeaders): void; /** * 构造session存储的key * @param runtimeContext runtime context */ protected getSessionStorageKey(runtimeContext?: RuntimeContext): string; }