Package Exports
- axios-rest-client
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 (axios-rest-client) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Axios Rest
A simple axios wrapper to make rest api call delightful.
Example
const axiosRestClient = require('axios-rest-client')
const api = axiosRestClient({baseUrl: process.env.API_BASE_URL})
// Get all users
api.users.all().then(response => {
console.log(response.data)
})
// Create new user
api.users.create({
firstname: 'John',
lastname: 'Doe'
})Installation
npm install --save axios-rest-clientaxios-rest require axios to work, so you have to install axios
npm install --save axiosHow to use it ?
Create your axios rest client
const axiosRestClient = require('axios-rest-client')
const api = axiosRestClient({
baseUrl: process.env.API_BASE_URL // this is required
// see axios for other configuration options
})And that all ! You can start requesting your api
Start by creating endpoint for your resources
// Create multiple resources endpoints
api.endpoints({
users: 'users', // /users endpoint
posts: 'post-resources' // /post-resources endpoint
})
api.endpoint('users') // Create /users endpoint
// You can access previously endpoint as attribute
// If the endpoint does not exist it will be created automatically
api.users
api.comments // get endpoint for comments on /commentsYou can then call
api.users.all() // GET /users
api.users.find(1) // Get /users/1
api.users.create(data) // POST /users, body=data
api.users.update(1, data) // PUT /users/1, body=data
api.users.delete(1) // DELETE /users/1If you want to create an api endpoint for a single instance of a collection just call .one(instanceId) on the collection endpoint.
api.users.one(1) // Create entity endpoint for user with id 1
// or simply do
api.users[1] // to get the /users/1 endpoint automatically created for youYou can the call
api.users[1].get() // GET /users/1
api.users[1].post(data) // POST /users/1, body = data
api.users[1].put(data) // PUT /users/1, body = data
api.users[1].delete() // DELETE /users/1