fetch-io
Service for fetching data.
usage
import { GET, init } from '@evo/user-info';
const data = await GET('some/url');
API
Each api method implements Promise interface (can be awaited) and can throw
2 kind of exceptions FetchNetworkError
and FetchDataError
.
- FetchNetworkError - is thrown when something is wrong with the network request.
-
FetchDataError is thrown when response has
{ status: 'error' }
.
init(myHost: string): void
Initializes myHost for the service.
fetch-io depends on the user-info service so you need to initialize it also
The following API methods have the same signatures:
GET(url: string, params: Object, opts: Object): Response
POST(url: string, params: Object, opts: Object): Response
PUT(url: string, params: Object, opts: Object): Response
DELETE(url: string, params: Object, opts: Object): Response
Params:
- url - url host
- params - params that will be passed to fetch
- opts - options passed to
fetch
call.
Executes GET request
Example
import { GET, POST } from '@evo/fetch-io';
const data = await GET('<url>');
const data = await POST('<url>', { param1: 'test' });
const data = await POST('<url>', { param1: 'test' }, { credentials: 'same-origin' });
The following API methods will use myHost
as a host for the request:
my.GET(url: string, params: Object, opts: Object): Response
my.POST(url: string, params: Object, opts: Object): Response
my.PUT(url: string, params: Object, opts: Object): Response
my.DELETE(url: string, params: Object, opts: Object): Response
Example
import { my } from '@evo/fetch-io';
const data = await my.GET('<url>');
const data = await my.POST('<url>', { param1: 'test' });