diff options
Diffstat (limited to 'lib/rpc.js')
| -rw-r--r-- | lib/rpc.js | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/lib/rpc.js b/lib/rpc.js new file mode 100644 index 00000000..b8a2d0dd --- /dev/null +++ b/lib/rpc.js @@ -0,0 +1,26 @@ +import got from "got"; + +export default ({ host, port, wallet, username, password }) => + new Proxy( + {}, + { + get: (target, prop) => (...params) => + ((method, ...params) => { + let url = `http://${host}:${port}/wallet/${wallet}`; + return got + .post(url, { + json: { + method, + params + }, + headers: { + authorization: `Basic ${Buffer.from( + `${username}:${password}` + ).toString("base64")}` + } + }) + .json() + .then(({ result }) => result); + })(prop.toLowerCase(), ...params) + } + ); |
