diff options
author | Florian Dold <florian@dold.me> | 2023-02-23 00:52:10 +0100 |
---|---|---|
committer | Florian Dold <florian@dold.me> | 2023-02-23 00:52:17 +0100 |
commit | 7985b0a33ffc3e258da5d73f4056384c38e626fe (patch) | |
tree | 68908cb8ac2d49551f22bb4745bdf541156b8be5 /packages/taler-util/src/http-impl.qtart.ts | |
parent | 7879efcff70ea73935e139f4522aedadfe755c04 (diff) | |
download | wallet-core-7985b0a33ffc3e258da5d73f4056384c38e626fe.tar.gz wallet-core-7985b0a33ffc3e258da5d73f4056384c38e626fe.tar.bz2 wallet-core-7985b0a33ffc3e258da5d73f4056384c38e626fe.zip |
taler-harness: deployment tooling for tipping
Diffstat (limited to 'packages/taler-util/src/http-impl.qtart.ts')
-rw-r--r-- | packages/taler-util/src/http-impl.qtart.ts | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/packages/taler-util/src/http-impl.qtart.ts b/packages/taler-util/src/http-impl.qtart.ts index 954b41802..ee3d1f725 100644 --- a/packages/taler-util/src/http-impl.qtart.ts +++ b/packages/taler-util/src/http-impl.qtart.ts @@ -21,7 +21,7 @@ */ import { Logger } from "@gnu-taler/taler-util"; import { TalerError } from "./errors.js"; -import { encodeBody, HttpLibArgs } from "./http-common.js"; +import { encodeBody, getDefaultHeaders, HttpLibArgs } from "./http-common.js"; import { Headers, HttpRequestLibrary, @@ -54,7 +54,7 @@ export class HttpLibImpl implements HttpRequestLibrary { } async fetch(url: string, opt?: HttpRequestOptions): Promise<HttpResponse> { - const method = opt?.method ?? "GET"; + const method = (opt?.method ?? "GET").toUpperCase(); logger.trace(`Requesting ${method} ${url}`); @@ -72,19 +72,18 @@ export class HttpLibImpl implements HttpRequestLibrary { } let data: ArrayBuffer | undefined = undefined; - let headers: string[] = []; - if (opt?.headers) { - for (let headerName of Object.keys(opt.headers)) { - headers.push(`${headerName}: ${opt.headers[headerName]}`); - } + const requestHeadersMap = { ...getDefaultHeaders(method), ...opt?.headers }; + let headersList: string[] = []; + for (let headerName of Object.keys(requestHeadersMap)) { + headersList.push(`${headerName}: ${requestHeadersMap[headerName]}`); } - if (method.toUpperCase() === "POST") { + if (method === "POST") { data = encodeBody(opt?.body); } const res = await qjsOs.fetchHttp(url, { method, data, - headers, + headers: headersList, }); return { requestMethod: method, |