JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 4
  • Score
    100M100P100Q37986F
  • License ISC

A library for performing simple http(s) requests.

Package Exports

  • simple-requests

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (simple-requests) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

simple-requests

A package for making simple HTTP requests (GET, POST, PUT, DELETE).

Installation

npm install simple-requests

Use

GET Request

JavaScript

const { get } = require('simple-requests');

get('https://postman-echo.com/get?foo1=bar1&foo2=bar2')
.then((res) => console.log(res));

TypeScript

import { get } from 'simple-requests';

(async () => {
    const res = await get('https://postman-echo.com/get?foo1=bar1&foo2=bar2')
    console.log(res);
})();

Responses

get requests returns objects with the IResponse interface:

interface IResponse {
    data: any;
    headers: http.IncomingHttpHeaders;
}

Example Response

{
  headers: {
    date: 'Thu, 28 May 2020 04:20:44 GMT',
    'content-type': 'application/json; charset=utf-8',
    'content-length': '247',
    connection: 'close',
    etag: 'W/"f7-wONllpKRvpcZ0DGneUbLd5irmW0"',
    vary: 'Accept-Encoding',
    'set-cookie': [
      'sails.sid=s%3Ab_94okJLKIMCu8R20ZCVCvl1nZkXXc40.SqaDcfefqu6ZSDm%2FVuJ%2BZPsrjmXN1GHy%2FrzUyIpFxC0; Path=/; HttpOnly'
    ]
  },
  data: {
    args: { foo1: 'bar1', foo2: 'bar2' },
  }
}

Error Response Error response default to unclassified error, or a JavaScript error message.

{
  data: 'Unclassified error.',
  error: true,
  headers: {
    date: 'Thu, 28 May 2020 04:20:44 GMT',
    'content-type': 'text/plain; charset=utf-8',
    'content-length': '19'
  }
}

POST Requests

post requests are similar to get requests, with the addition of a data property to the options parameter.

Note: more about data parameter, including examples, will be added.

URL Encoded Form Data

Sending URL encoded form data.

import querystring from 'querystring';

// Requesting an OAuth 2 bearer token.
  const data = querystring.stringify({
      client_id: this.clientId,
      client_secret: this.clientSecret,
      grant_type: 'client_credentials'
  });

  // Make sure to set the correct Content-Type.
  tmp = await post(this.oauthUrl, {
      data,
      headers: {
          'Content-length': data.length,
          'Content-type': 'application/x-www-form-urlencoded',
      }
  });

  console.log('token', tmp.data);

Output

# OAuth 2 bearer token.
zgBUCUQneGqAwz44ghwXe82i54CI