From f7573fee3cf5119a5ade617e252f34ddba6fe727 Mon Sep 17 00:00:00 2001 From: SamTolmay Date: Fri, 5 Mar 2021 16:01:30 +0200 Subject: [PATCH] refactor(graphql): Use getHeaders function provided by server. --- packages/cli/src/commands/dev/getGraphQL.js | 1 + packages/graphql/src/context/context.js | 14 +++----------- packages/servers/serverDev/src/server.js | 4 +++- packages/servers/serverDocker/src/server.js | 3 ++- .../serverNetlify/src/functions/graphql/index.js | 3 ++- 5 files changed, 11 insertions(+), 14 deletions(-) diff --git a/packages/cli/src/commands/dev/getGraphQL.js b/packages/cli/src/commands/dev/getGraphQL.js index db7a1e95c..a51cda5bc 100644 --- a/packages/cli/src/commands/dev/getGraphQL.js +++ b/packages/cli/src/commands/dev/getGraphQL.js @@ -30,6 +30,7 @@ async function getGraphQl({ context }) { CONFIGURATION_BASE_PATH: context.outputDirectory, development: true, logger: console, + getHeaders: ({ req }) => req.headers, getSecrets: createGetSecretsFromEnv(), }; const gqlContext = createGqlContext(config); diff --git a/packages/graphql/src/context/context.js b/packages/graphql/src/context/context.js index 582ade552..19c8809e8 100644 --- a/packages/graphql/src/context/context.js +++ b/packages/graphql/src/context/context.js @@ -21,23 +21,15 @@ import createGetController from '../controllers/getController'; import createGetLoader from './getLoader'; function createContext(config) { - const { CONFIGURATION_BASE_PATH, logger, getSecrets, development } = config; + const { CONFIGURATION_BASE_PATH, development, getHeaders, getSecrets, logger } = config; const bootstrapContext = { CONFIGURATION_BASE_PATH, development, getSecrets, logger, }; - // lambda context function signature is ({ event }), - // but express is ({ req }) - async function context({ event, req }) { - let headers; - if (event) { - headers = event.headers; - } - if (req) { - headers = req.headers; - } + async function context(input) { + const headers = getHeaders(input); bootstrapContext.host = get(headers, 'Host') || get(headers, 'host'); bootstrapContext.getLoader = createGetLoader(bootstrapContext); bootstrapContext.getController = createGetController(bootstrapContext); diff --git a/packages/servers/serverDev/src/server.js b/packages/servers/serverDev/src/server.js index 810f325fb..aa7ad55ff 100644 --- a/packages/servers/serverDev/src/server.js +++ b/packages/servers/serverDev/src/server.js @@ -25,8 +25,10 @@ dotenv.config({ silent: true }); const config = { CONFIGURATION_BASE_PATH: path.resolve(process.cwd(), './.lowdefy/build'), development: true, - logger: console, + getHeaders: ({ req }) => req.headers, + setCookie: ({ res }) => {}, getSecrets: createGetSecretsFromEnv(), + logger: console, }; const context = createContext(config); diff --git a/packages/servers/serverDocker/src/server.js b/packages/servers/serverDocker/src/server.js index 8ff3b8039..472bb803d 100644 --- a/packages/servers/serverDocker/src/server.js +++ b/packages/servers/serverDocker/src/server.js @@ -22,8 +22,9 @@ import { createGetSecretsFromEnv } from '@lowdefy/node-utils'; const config = { CONFIGURATION_BASE_PATH: path.resolve(process.cwd(), './build'), - logger: console, + getHeaders: ({ req }) => req.headers, getSecrets: createGetSecretsFromEnv(), + logger: console, }; const context = createContext(config); diff --git a/packages/servers/serverNetlify/src/functions/graphql/index.js b/packages/servers/serverNetlify/src/functions/graphql/index.js index 28707d42e..0b158a495 100644 --- a/packages/servers/serverNetlify/src/functions/graphql/index.js +++ b/packages/servers/serverNetlify/src/functions/graphql/index.js @@ -21,8 +21,9 @@ import { createGetSecretsFromEnv } from '@lowdefy/node-utils'; const config = { CONFIGURATION_BASE_PATH: path.resolve(__dirname, './build'), - logger: console, + getHeaders: ({ event }) => event.headers, getSecrets: createGetSecretsFromEnv(), + logger: console, }; const server = new ApolloServer({