diff options
| author | 8cy <[email protected]> | 2020-04-03 02:37:42 -0700 |
|---|---|---|
| committer | 8cy <[email protected]> | 2020-04-03 02:37:42 -0700 |
| commit | 60867fb030bae582082340ead7dbc7efdc2f5398 (patch) | |
| tree | 4c6a7356351be2e4914e15c4703172597c45656e /node_modules/snekfetch/src/browser.js | |
| parent | commenting (diff) | |
| download | s5nical-60867fb030bae582082340ead7dbc7efdc2f5398.tar.xz s5nical-60867fb030bae582082340ead7dbc7efdc2f5398.zip | |
2020/04/03, 02:34, v1.2.0
Diffstat (limited to 'node_modules/snekfetch/src/browser.js')
| -rw-r--r-- | node_modules/snekfetch/src/browser.js | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/node_modules/snekfetch/src/browser.js b/node_modules/snekfetch/src/browser.js new file mode 100644 index 0000000..8820892 --- /dev/null +++ b/node_modules/snekfetch/src/browser.js @@ -0,0 +1,36 @@ +function buildRequest(method, url) { + return { + method, + path: url, + redirect: this.options.followRedirects ? 'follow' : 'manual', + headers: {}, + setHeader(name, value) { + this.headers[name.toLowerCase()] = value; + }, + getHeader(name) { + return this.headers[name.toLowerCase()]; + }, + }; +} + +function finalizeRequest() { + this._finalizeRequest(); + if (this.data) + this.request.body = this.data; + return window.fetch(this.request.path, this.request) + .then((r) => r.text().then((t) => { + const headers = {}; + for (const [k, v] of r.headers.entries()) + headers[k.toLowerCase()] = v; + return { response: r, raw: t, headers }; + })); +} + +module.exports = { + buildRequest, finalizeRequest, + shouldSendRaw: () => false, + METHODS: ['GET', 'HEAD', 'POST', 'PUT', 'DELETE', 'CONNECT', 'OPTIONS', 'PATCH'], + STATUS_CODES: {}, + Extension: Object, + FormData: window.FormData, +}; |