JSFiddle - React, Tailwind, and code Playground

by Keith Henry

JavaScript

function ajaxRequest(url, onSuccess, onFail) {
  var request = new XMLHttpRequest();
  request.addEventListener('load', function() {
    if (request.status >= 200 &&
      request.status < 300)
      onSuccess(request.response);
    else
      onFail(request.statusText);
  });
  request.addEventListener('error', function() {
    onFail('Network');
  });
  request.open('GET', url);
  request.send();
}

ajaxRequest(
  'yourApi/getsomething',
  function(resultData) {
    // Do something on success
  },
  function(err) {
    // Log an error
  });

function ajaxPromise(url) {
  return new Promise(function(resolve, reject) {
    var request = new XMLHttpRequest();
    request.addEventListener('load', resolve);
    request.addEventListener('error', reject);
    request.open('GET', url);
    request.send();
  });
}

ajaxPromise('yourApi/getsomething').then(
  function(resultData) {
    // Do something on success
  },
  function(err) {
    // Log an error
  });