MCPcopy
hub / github.com/socketio/socket.io / handleRequest

Method handleRequest

packages/engine.io/lib/userver.ts:123–170  ·  view source on GitHub ↗
(
    res: HttpResponse,
    req: HttpRequest & { res: any; _query: any },
  )

Source from the content-addressed store, hash-verified

121 }
122
123 private handleRequest(
124 res: HttpResponse,
125 req: HttpRequest & { res: any; _query: any },
126 ) {
127 debug('handling "%s" http request "%s"', req.getMethod(), req.getUrl());
128 this.prepare(req as unknown as HttpRequest & EngineRequest, res);
129
130 req.res = res;
131
132 const callback = (errorCode, errorContext) => {
133 if (errorCode !== undefined) {
134 this.emit("connection_error", {
135 req,
136 code: errorCode,
137 message: Server.errorMessages[errorCode],
138 context: errorContext,
139 });
140 this.abortRequest(req.res, errorCode, errorContext);
141 return;
142 }
143
144 if (req._query.sid) {
145 debug("setting new request for existing client");
146 // @ts-ignore
147 this.clients[req._query.sid].transport.onRequest(req);
148 } else {
149 const closeConnection = (errorCode, errorContext) =>
150 this.abortRequest(res, errorCode, errorContext);
151 this.handshake(
152 req._query.transport,
153 req as unknown as EngineRequest,
154 closeConnection,
155 );
156 }
157 };
158
159 this._applyMiddlewares(req, res, (err) => {
160 if (err) {
161 callback(Server.errors.BAD_REQUEST, { name: "MIDDLEWARE_FAILURE" });
162 } else {
163 this.verify(
164 req as unknown as HttpRequest & EngineRequest,
165 false,
166 callback,
167 );
168 }
169 });
170 }
171
172 private handleUpgrade(
173 res: HttpResponse,

Callers

nothing calls this directly

Calls 4

prepareMethod · 0.95
_applyMiddlewaresMethod · 0.95
debugFunction · 0.85
callbackFunction · 0.50

Tested by

no test coverage detected