diff --git a/gateway-js/src/datasources/RemoteGraphQLDataSource.ts b/gateway-js/src/datasources/RemoteGraphQLDataSource.ts index 1461899f9..1794187b9 100644 --- a/gateway-js/src/datasources/RemoteGraphQLDataSource.ts +++ b/gateway-js/src/datasources/RemoteGraphQLDataSource.ts @@ -19,6 +19,8 @@ import { isObject } from '../utilities/predicates'; import { GraphQLDataSource } from './types'; import createSHA from 'apollo-server-core/dist/utils/createSHA'; +type GraphQLRequestWithHttp = GraphQLRequest & Required>; + export class RemoteGraphQLDataSource = Record> implements GraphQLDataSource { fetcher: typeof fetch = fetch; @@ -71,7 +73,10 @@ export class RemoteGraphQLDataSource = Reco }; if (this.willSendRequest) { - await this.willSendRequest({ request, context }); + await this.willSendRequest({ + request: request as GraphQLRequestWithHttp, + context + }); } if (!request.query) { @@ -172,10 +177,10 @@ export class RemoteGraphQLDataSource = Reco } public willSendRequest?( - requestContext: Pick< - GraphQLRequestContext, - 'request' | 'context' - >, + requestContext: { + request: GraphQLRequestWithHttp, + context: TContext + }, ): ValueOrPromise; public didReceiveResponse?(