@xoffox/invoker

0.0.1 • Public • Published

ARK API INVOKER MODULE

Project Setup

Setup in local

npm install

Install dependencies

Development commands

npm run start

Create esm files & serve the content at http://localhost:3333;

Testing commands

npm run test

Run tests

Introduction

ark-invoker-module is a tool that provides communication REST services, based on axios.

Usage

import Invoker from "@ark-technical-modules/invoker";
Invoker.post({
	url: 'https://jsonplaceholder.typicode.com/todos/1',
	data: {
		params: {a :'a'} //url params
		body: { property: 'value' }
	},
	config: {
		timeout: 100,
		headers: {
			header: 'value'
		}
	},
	onBefore: ({data, config, url}) => {
		return {
			url: 'https://jsonplaceholder.typicode.com/todos/2',
			// it will only replace corresponding return field before request initials
		} 
	},
	onAfter:() => {},
	onError: (error) => {},
	onSuccess: (response) => {},
});

Properties/Options

Name Required Type Default Description
url true String Endpoint URL
data false Object {body, params} values
data.params false Object URL Params
data.body false Object Request ody
config false Object {} Request configuration object
config.timeout false Number 0 Timeout duration for cancelling request. If response duration exceeds timeout, the request will be cancelled
config.headers false Object {} Request headers
onBefore({data, config, url }) false Function Callback function that runs before request initials. It manipulates function parameters if has corresponding return property
onAfter() false Function Callback function that runs after request completes.
onError(error) false Function Callback function that runs if request fails
onSuccess(response) false Function Callback function that runs after request successfully completes

Methods

	import Invoker from "@ark-technical-modules/invoker";
	// Allowed methods: GET, POST

	Invoker.setStrict(true || false)
	/*
		If it enables; request headers which are required by Web-Standarts will be checked.
		Request won't initialize if it's not satisfied.
	*/

	Invoker.setDefaultHeader(key, value);
	/*
		RequestHeaders[key]: value
	*/

Readme

Keywords

none

Package Sidebar

Install

npm i @xoffox/invoker

Weekly Downloads

0

Version

0.0.1

License

UNLICENSED

Unpacked Size

90 kB

Total Files

12

Last publish

Collaborators

  • utab