mirror of
https://github.com/186526/handlers.js
synced 2024-10-13 00:29:43 +00:00
Implements most platform-independent features
This commit is contained in:
7
src/platform/index.ts
Normal file
7
src/platform/index.ts
Normal file
@ -0,0 +1,7 @@
|
||||
import { request, response } from "../interface";
|
||||
|
||||
export interface PlatformAdapater<T = any, K = any> {
|
||||
listen(port: number): void;
|
||||
handleRequest(request: any): request<T>;
|
||||
handleResponse(response: response<K>, NativeResponse?: any): any;
|
||||
}
|
||||
27
src/platform/node.ts
Normal file
27
src/platform/node.ts
Normal file
@ -0,0 +1,27 @@
|
||||
import { PlatformAdapater } from ".";
|
||||
import { request, response } from "../interface";
|
||||
import router from "../router";
|
||||
import http from "http";
|
||||
|
||||
export class NodePlatformAdapter<T = any, K = any> implements PlatformAdapater {
|
||||
constructor(Router: )
|
||||
listen(port: number): void {
|
||||
const server = http.createServer();
|
||||
server.on(
|
||||
"request",
|
||||
(req: http.IncomingMessage, res: http.ServerResponse) => {
|
||||
const request = this.handleRequest(req);
|
||||
|
||||
}
|
||||
);
|
||||
server.listen(port);
|
||||
}
|
||||
|
||||
handleRequest(request: http.IncomingMessage): request<T> {
|
||||
throw new Error("Method not implemented.");
|
||||
}
|
||||
|
||||
handleResponse(response: response<K>, NativeResponse: http.ServerResponse) {
|
||||
throw new Error("Method not implemented.");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user