metal-ajax

3.1.1 • Public • Published

metal-ajax

Build Status

Build Status

Low-level Metal.js utility to perform Ajax requests. If you're looking for something higher level, take a look at fetch.

Use

Simple request

import Ajax from 'metal-ajax';
 
Ajax.request('/url', 'get')
  .then(xhrResponse => {
    // Handle response
  });

Posts

Ajax.request('/url', 'post', 'requestBody')
  .then(xhrResponse => {
    // Handle response
  });

Request headers and params

Custom request headers and params can bet set using a MultiMap from metal-structs.

import {MultiMap} from 'metal-structs';
 
const headers = new MultiMap();
const params = new MultiMap();
 
headers.add('content-type', 'application/json');
params.add('foo', 'bar');
 
Ajax.request('/url', 'get', null, headers, params)
  .then(function(xhrResponse) {
    // Handle response
  });

Catching errors

Ajax.request('/url', 'get')
  .then(xhrResponse => {
    // Handle response
  })
  .catch(error => {
    // Handle error
  });

Watch for progress

In order for the progress listener to work, the response must have the Content-Length response header set.

Ajax.request('/url', 'get')
  .progress(progress => {
    // Fires with a value between 0 and 1 representing the percent
  })
  .then(xhrResponse => {
    // Handle response
  })

Setup

  1. Install a recent release of NodeJS if you don't have it yet.

  2. Install local dependencies:

npm install
  1. Run the tests:
npm test

Contributing

Check out the contributing guidelines for more information.

/metal-ajax/

    Package Sidebar

    Install

    npm i metal-ajax

    Weekly Downloads

    2,817

    Version

    3.1.1

    License

    BSD

    Unpacked Size

    335 kB

    Total Files

    8

    Last publish

    Collaborators

    • antonio-ortega
    • daniel.sanz
    • izaera-lr
    • edalgrin
    • pat270
    • liferay
    • bryceosterhaus
    • matuzalemteles
    • gagranta
    • p2kmgcl
    • marko.cikos
    • kresimircoko
    • fernandosouza
    • jbalsas
    • brunobasto
    • rframpton
    • mairatma
    • eduardolundgren