Makes a PUT request to the passed URL.

Use XMLHttpRequest web api to make a put request to the given url.
Set the value of an HTTP request header with setRequestHeader method.
Handle the onload event, by running the provided callback function.
Handle the onerror event, by running the provided err function.
Omit the last argument, err to log the request to the console’s error stream by default.


const httpPut = (url, data, callback, err = console.error) => {
  const request = new XMLHttpRequest();'PUT', url, true);
  request.setRequestHeader('Content-type', 'application/json; charset=utf-8');
  request.onload = () => callback(request);
  request.onerror = () => err(request);


const password = 'fooBaz';
const data = JSON.stringify({
  id: 1,
  title: 'foo',
  body: 'bar',
  userId: 1
httpPut('', data, request => {
}); /*
Logs: {
  id: 1,
  title: 'foo',
  body: 'bar',
  userId: 1