UNPKG

common-package

Version:
44 lines (39 loc) 1.18 kB
import { apiUrl } from './const' const fetch = require('node-fetch') const generateUrl = (url, params) => { const generatedUrl = new URL(apiUrl + '/' + url) Object.keys(params).forEach(key => generatedUrl.searchParams.append(key, params[key]) ) return generatedUrl } export const callApi = (url, options) => { const { method, params, headers } = options console.log(options) return fetch(generateUrl(url, params), { method: method || 'GET', // *GET, POST, PUT, DELETE, etc. mode: 'cors', cache: 'no-cache', credentials: 'same-origin', headers: headers || { 'Content-Type': 'application/json' // "Content-Type": "application/x-www-form-urlencoded" }, redirect: 'follow', referrer: 'no-referrer', body: method === 'GET' ? JSON.stringify() : JSON.stringify(params) }) .then(response => { if (response.status === 200) { return response.json() } throw new Error('Network response was not ok.') }) .then(json => { console.log(json) return json }) .catch(error => { console.log('Error', error) }) }