Repository URL to install this package:
|
Version:
0.8.2 ▾
|
// (c) Copyright 2023 Supertenant Ltd. - all rights reserved.
// See LICENSE file in project root for license terms.
"use strict";const fetch=require("node-fetch"),DataSource=require("./DataSource");class HttpDataSource extends DataSource{constructor(targetUrl,refreshDelay,fetchOptions){super(refreshDelay),this.targetUrl=targetUrl,this.fetchOptions=fetchOptions}doRefresh(callback){fetch(this.targetUrl,this.fetchOptions).then(res=>res.text()).then(txt=>JSON.parse(txt)).then(json=>{callback(null,json)}).catch(e=>{console.error(`Fetching metadata from ${this.targetUrl} failed.`,e),callback(e)})}}module.exports=exports=HttpDataSource;