diff --git a/src/matrix/net/HomeServerApi.js b/src/matrix/net/HomeServerApi.js index 918987c5..99299190 100644 --- a/src/matrix/net/HomeServerApi.js +++ b/src/matrix/net/HomeServerApi.js @@ -55,13 +55,13 @@ export class HomeServerApi { .join("&"); url = `${url}?${queryString}`; let bodyString; - const headers = new Headers(); + const headers = new Map(); if (this._accessToken) { - headers.append("Authorization", `Bearer ${this._accessToken}`); + headers.set("Authorization", `Bearer ${this._accessToken}`); } - headers.append("Accept", "application/json"); + headers.set("Accept", "application/json"); if (body) { - headers.append("Content-Type", "application/json"); + headers.set("Content-Type", "application/json"); bodyString = JSON.stringify(body); } const requestResult = this._requestFn(url, { diff --git a/src/matrix/net/request/fetch.js b/src/matrix/net/request/fetch.js index bc9ea8b7..886e8195 100644 --- a/src/matrix/net/request/fetch.js +++ b/src/matrix/net/request/fetch.js @@ -44,6 +44,13 @@ export function fetchRequest(url, options) { referrer: "no-referrer", cache: "no-cache", }); + if (options.headers) { + const headers = new Headers(); + for(const [name, value] of options.headers.entries()) { + headers.append(name, value); + } + options.headers = headers; + } const promise = fetch(url, options).then(async response => { const {status} = response; const body = await response.json();