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!

Dependencies (1)

Dev Dependencies (19)

Package Sidebar

Install

npm i neojax

Weekly Downloads

8

Version

2.1.7

License

Apache-2.0

Unpacked Size

43.9 kB

Total Files

22

Last publish

Collaborators

  • keimeno