0.0.2 • Published 2 years ago

slim-api-requester v0.0.2

Weekly downloads
-
License
ISC
Repository
github
Last release
2 years ago

slim-api-requester

Обертка над axios для выполнения запросов к API

Утановка через npm

npm i slim-api-requester

Пример использования в приложении

import CHRequest from "slim-api-requester";

/** Запрос к АПИ. */
export default function request(method, url, options = {}) {
  const requestOptions = {
    ...options,
    baseURL: '/api',
  };

  return CHRequest(method, url, requestOptions)
    .then((response) => {
      return response.data;
    })
    .catch((error) => {
      // Логгер на случай ошибки API
      console.error(
        "Error API::\n",
        `${method.toUpperCase()} ${url}`,
        `BASE_URL: ${requestOptions.baseURL}\n`,
        "Request: ",
        options.data,
        "\n",
        "Response: ",
        error
      );
      return Promise.reject(
        (error.response && error.response.data) || {
          message: 'Упс... Что то пошло не так.',
        }
      );
    });
}

Список опций

export interface Options {
  data: object;
  before: () => void;
  success: (response: Response) => void;
  error: (error: Error) => void;
  headers: object;
  baseURL: string;
}

data

Объект передаваемых данных

before, success, error

Функции колбэки для axios

headers

Заголовки запроса

baseURL

Адрес API