2.0.0 • Published 7 years ago

@gigster/module-redux-request v2.0.0

Weekly downloads
11
License
UNLICENSED
Repository
-
Last release
7 years ago

redux-request

RoleNameEmailSlack
Product OwnerFrances Haugenfrances@gigster.com@frances
MaintainerGeoff Kindergeoff.kinder@gigster.com@geoff
DeveloperAlice Wangalice@gigster.com@alicebot
DeveloperDan Isazadan@gigster.com@dan
DeveloperMark Miyashitamark.miyashita@gigster.com@mark

Overview

Adds a generic request layer to make requests and parse responses. In also includes interceptors for the following frameworks:

  • Loopback

Usage

Specification

NameStatusDescription
generateTeststrue/falseSet to true if you would like generated tests to be created for you for the request layer.

Dependencies

This module works with the create-react-app block located here and the react-base module located here.

To run the generated tests, you must also use the react-jest module located here.

Examples

Common scenarios for using this module include:

Authentication using withAuth

In this example, we use withAuth to set the 'Authentication' header on the request:

import requestCreator, { Loopback } from '../api/request';

// Create the request creator.
const createRequest = requestCreator(Loopback);

// Create a request.
// withAuth will set the TOKEN to the 'Authentication' header.
const request = createRequest().withAuth(TOKEN);

// Make the request.
request.get(URL);

Custom Headers using setHeaders

In this example, we use setHeaders to set custom headers on the request:

import requestCreator, { Loopback } from '../api/request';

// Create the request creator.
const createRequest = requestCreator(Loopback);

// Create a request.
// setHeaders will set the included headers on the request.
const request = createRequest().setHeaders(HEADERS);

// Make the request.
request.get(URL);

Filters using order, limit, skip, and where

In this example, we use order, limit, skip, and where to filter data on the API side:

import requestCreator, { Loopback } from '../api/request';

// Create the request creator.
const createRequest = requestCreator(Loopback);

// Create a request where we order by the name, skip the first 20 objects, limit to the next 10, and only include objects where the age is either 10, 20, or 30.
const request = (
  createRequest()
    .order({name: 'DESC'})
    .limit(10)
    .skip(20)
    .where({ age: { inq: [10, 20, 30] } });
);

// Make the request.
request.get(URL);

Nested Data using include

In this example, we use include to request nested data (if the API supports it):

import requestCreator, { Loopback } from '../api/request';

// Create the request creator.
const createRequest = requestCreator(Loopback);

// Create a request with nested data included.
const request = createRequest().include([
  'user',
  'products',
  'skills',
]);

// Make the request.
request.get(URL);
2.0.0

7 years ago

1.1.8

7 years ago

1.1.7

7 years ago

1.1.6

7 years ago

1.1.5

7 years ago

1.1.4

7 years ago

1.1.3

7 years ago

1.1.2

7 years ago

1.1.1

7 years ago

1.1.0

7 years ago