UNPKG

eth-scan-api

Version:

API to etherscan with a simple interface

51 lines (39 loc) 1.17 kB
/** * @param {string} chain * @param {number} timeout * @param {object} client * @returns {string} */ module.exports = function(chain, timeout, client) { /** * @param query * @returns {Promise<any>} */ function getRequest(query) { return new Promise(function(resolve, reject) { client.get('/api?' + query).then(function(response) { var data = response.data; if (data.status && data.status != 1) { let returnMessage = data.message ||'NOTOK'; if (data.result && typeof data.result === 'string') { returnMessage = data.result; } else if (data.message && typeof data.message === 'string') { returnMessage = data.message; } return reject(returnMessage); } if (data.error) { var message = data.error; if(typeof data.error === 'object' && data.error.message){ message = data.error.message; } return reject(new Error(message)); } resolve(data); }).catch(function(error) { return reject(new Error(error)); }); }); } return getRequest; };