同步操作将从 Gitee 极速下载/code-server 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
import * as express from "express"import * as expressCore from "express-serve-static-core"import * as http from "http"import * as net from "net"export const handleUpgrade = (app: express.Express, server: http.Server): void => {server.on("upgrade", (req, socket, head) => {socket.pause()req.ws = socketreq.head = headreq._ws_handled = false// Send the request off to be handled by Express.;(app as any).handle(req, new http.ServerResponse(req), () => {if (!req._ws_handled) {socket.end("HTTP/1.1 404 Not Found\r\n\r\n")}})})}export interface WebsocketRequest extends express.Request {ws: net.Sockethead: Buffer}interface InternalWebsocketRequest extends WebsocketRequest {_ws_handled: boolean}export type WebSocketHandler = (req: WebsocketRequest,res: express.Response,next: express.NextFunction,) => void | Promise<void>export class WebsocketRouter {public readonly router = express.Router()public ws(route: expressCore.PathParams, ...handlers: WebSocketHandler[]): void {this.router.get(route,...handlers.map((handler) => {const wrapped: express.Handler = (req, res, next) => {;(req as InternalWebsocketRequest)._ws_handled = truereturn handler(req as WebsocketRequest, res, next)}return wrapped}),)}}export function Router(): WebsocketRouter {return new WebsocketRouter()}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。