Skip to main content

ApiError

Class for getting API error message from parameter in catch block.

note

Class can be used in frontend and backend

Import

const { ApiError } = require("js-ts-kit");

Example

Live Editor
function Example() {
  const [statusCode, setStatusCode] = useState(0);
  const [error, setError] = useState("");

  async function getApiData() {
    let error = null;

    try {
      await axios({
        url: "http://localhost:8080",
        method: "get",
      });
    } catch (err) {
      console.error(err);

      error = new ApiError(DefaultError.message(err), 500);
      if (ApiError.isApiError(err)) {
        error = new ApiError(ApiError.default(err), err.response.status);
      }
    }

    setStatusCode(error.status);
    setError(error ? error.message : "");
  }

  getApiData();

  return (
    <>
      <b>Status:</b> {statusCode}
      <br />
      <b>Message:</b> {error}
    </>
  );
}
Result
Loading...

Reference

Create Object

new ApiError(message, status)

NameTypeDefault ValueDescription
messagestringerror message
statusnumber500status code from API response

Object Properties

note

Includes all properties from DefaultError class

NameTypeStaticDefault Value
statusnumberyes500

Methods

note

Includes all methods from DefaultError class

static isApiError(err)

Parameters
  • Type: Error

  • Description: Error parameter from catch block

Returns
  • Type: boolean

  • Description: true if error is from sequelize; otherwise, false

static default(err)

Parameters
  • Type: Error

  • Description: Error parameter from catch block

Returns
  • Type: string

  • Description: message from Error parameter from catch block