UNPKG

@makakwastaken/ts-edifact

Version:
54 lines 1.81 kB
/** * @author Roman Vottner * @copyright 2020 Roman Vottner * @license Apache-2.0 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ /* eslint-disable @typescript-eslint/no-unsafe-call */ /* eslint-disable @typescript-eslint/no-unsafe-assignment */ import * as axios from 'axios'; import * as url from 'node:url'; export class HttpClient { baseUrl; constructor(baseUrl) { this.baseUrl = baseUrl; } async get(target) { const uri = url.resolve(this.baseUrl, target); const request = axios.default .get(uri) .then((axiosResponse) => { if (axiosResponse.status === 200) { const response = axiosResponse.data; // console.log(`Response: ${response}`); return response; } console.error(`Unexpected response ${axiosResponse.status}: ${axiosResponse.data}`); return ''; }) .catch((err) => { console.error(err.message); return ''; }); try { const data = await request; return Promise.resolve(data); } catch (error) { console.error(error); return Promise.reject(error); } } } //# sourceMappingURL=httpClient.js.map