qortal-ui/crypto/api/fetch-request.js
2024-05-10 18:00:47 +02:00

32 lines
630 B
JavaScript

import { waitForConfig, watchConfig } from '../config'
let config = {}
watchConfig((c) => {
config = c
})
export async function request(url, options) {
options = options || {}
const body = options.body
const method = options.method || 'GET'
const headers = options.headers || {}
await waitForConfig()
const n = config.nodeConfig.knownNodes[config.nodeConfig.node]
const node = n.protocol + '://' + n.domain + ':' + n.port
return fetch(node + url, {
method,
headers,
body,
}).then(async (response) => {
try {
return await response.clone().json()
} catch (e) {
return await response.text()
}
})
}