apollo-server/packages/apollo-server-core/src/nodeHttpToRequest.ts
2018-06-01 12:34:49 -07:00

19 lines
506 B
TypeScript

import { IncomingMessage } from 'http';
import { Request, Headers } from 'node-fetch';
export function convertNodeHttpToRequest(req: IncomingMessage): Request {
const headers = new Headers();
Object.keys(req.headers).forEach(key => {
const values = req.headers[key];
if (Array.isArray(values)) {
values.forEach(value => headers.append(key, value));
} else {
headers.append(key, values);
}
});
return new Request(req.url, {
headers,
method: req.method,
});
}