neojax
TypeScript icon, indicating that this package has built-in type declarations

2.1.7 • Public • Published


CodacyBadge Maintainability Build status Coverage status neojax npm neojax npm

Description

neojax is a lightweight alternative to axios, with native typescript support.

Setup

npm

npm install neojax --save

cdn

<script
    src="https://cdn.jsdelivr.net/npm/neojax@latest"
    type="text/javascript"
></script> 

Documentation

To import in the module do:

import Neojax from 'neojax';

With typescript you can as well import the different types

import Neojax, { NeojaxResponse, NeojaxError } from 'neojax';

This will give you a new Neojax instance, without any preset options.

If you want to predefine the baseUrl or headers you can create a new instance from this object, with the create() method.

const neojax = Neojax.create({
    baseUrl: 'https://example.org/',
    headers: {
        Authorization: 'Bearer mytoken'
    }
});

To send out a basic get request:

Neojax.get(url, options)
    .then(response => {
        console.log(response.data);
    })
    .catch(error => {
        console.log(error.message);
        console.log(error.response.data);
    });

You can also use async/await, because it returns a Promise.

const response = await Neojax.get(url, options);

This works similarly in typescript:

Neojax.get(url, options)
    .then((response: NeojaxResponse) => {
        console.log(response.data);
    })
    .catch((error: NeojaxError) => {
        console.log(error.message);
        console.log(error.message.data);
    });

And with async/await it looks like the following:

const response: NeojaxResponse = await Neojax.get(url, options);

A post request looks similar, with the main difference, that you have an optional data parameter.

const response = await Neojax.post(url, data, options);

It is now possible to change global defaults. (As well as those defined in your instance).

// global
Neojax.options.headers['Content-Type'] = 'application/json; charset=utf-8';
 
// for instances
neojax.options.baseUrl = 'https://api.example.org/';

The currently supported request types are:

  • GET
  • POST
  • PUT
  • DELETE

Contribute

If you want to contribute to this project please make sure to follow our guidelines.

  • You need to use tabs for indentation.
  • Explain your changes in the description of your pull request.
  • You may build the package locally, but you don't have to commit it, as this is done automatically.

Other than that, feel free to support neojax!

Package Sidebar

Install

npm i neojax

Weekly Downloads

0

Version

2.1.7

License

Apache-2.0

Unpacked Size

43.9 kB

Total Files

22

Last publish

Collaborators

  • keimeno