| 1234567891011121314151617181920212223242526272829 |
- const app = require('./app')
- app.service('api', function($http) {
- this.opts = {
- headers: {},
- withCredentials: true
- }
- this.postProcess = (res) => res.data
- this.get = (path) => $http.get(path, this.opts).then(this.postProcess)
- this.post = (path, data) => $http.post(path, data, this.opts).then(this.postProcess)
- this.put = (path, data) => $http.put(path, data, this.opts).then(this.postProcess)
- this.patch = (path, data) => $http.patch(path, data, this.opts).then(this.postProcess)
- this.delete = (path) => $http.delete(path, this.opts).then(this.postProcess)
- this.login = data => this.post('/api/auth/login', data)
- this.setToken = token => {
- this.token = token
- this.opts.headers.authentication = `Bearer ${token}`
- }
- this.crud = (apiPrefix) => ({
- list: () => this.get(apiPrefix),
- create: data => this.post(apiPrefix, data),
- read: id => this.get(`${apiPrefix}/${id}`),
- update: (id, data) => this.patch(`${apiPrefix}/${id}`, data),
- delete: (id) => this.delete(`${apiPrefix}/${id}`),
- trash: () => this.get(`${apiPrefix}/trash`),
- undelete: (id) => this.delete(`${apiPrefix}/trash/${id}`)
- })
- })
|