diff options
Diffstat (limited to 'source/library/fetcher/http.ts')
| -rw-r--r-- | source/library/fetcher/http.ts | 19 |
1 files changed, 5 insertions, 14 deletions
diff --git a/source/library/fetcher/http.ts b/source/library/fetcher/http.ts index 3138226..64322f2 100644 --- a/source/library/fetcher/http.ts +++ b/source/library/fetcher/http.ts @@ -3,6 +3,7 @@ /*** UTILITY ------------------------------------------ ***/ +import { buildHeaders, postJson } from "./http-body.ts"; import type { Fetcher, FetcherOptions } from "./types.ts"; /*** EXPORT ------------------------------------------- ***/ @@ -11,20 +12,10 @@ export function createHttpFetcher(options: FetcherOptions): Fetcher { const fetchImpl = options.fetch ?? globalThis.fetch; return async (req) => { - const response = await fetchImpl(options.url, { - body: JSON.stringify({ - operationName: req.operationName, - query: req.query, - variables: req.variables - }), - headers: { - "Content-Type": "application/json", - ...options.headers, - ...req.headers - }, - method: "POST" + return await postJson(fetchImpl, options.url, buildHeaders(options, req), { + operationName: req.operationName, + query: req.query, + variables: req.variables }); - - return await response.json(); }; } |