Package Exports
- ra-data-spring-rest
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 (ra-data-spring-rest) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
= ra-data-spring-rest xiayx xiayouxue@hotmail.com v1.0, 2020-03-18: SNAPSHOT
A https://github.com/marmelab/react-admin[React-admin] data provider for backends built with Spring Framework.
== Installation
npm install --save ra-data-spring-rest
== Usage
[source%nowrap,javascript]
// in App.js import React from 'react'; import { Admin, Resource } from 'react-admin'; import {springDataProvider, springHttpClient} from 'ra-data-spring-rest'; import { UserList } from './users';
const dataProvider = springDataProvider('http://path.to.api/',springHttpClient());
const App = () => (
export default App;
springHttpClient() use fetch to send request, +
you can also use springHttpClient(fetchUtils.fetchJson), +
or customize it:
[source%nowrap,javascript]
let httpClient = (url, options = {}) => { options.credentials = 'include'; return springHttpClient(url, options, fetchUtils.fetchJson) .then(response => { // do some thing you want return response; }); };
== Feature
This package was built to work with the default configurations of a web app using Spring Framework. It currently supports:
- Spring URLs with path variable.
- Sorting with
SortHandlerMethodArgumentResolver, using the sort query string parameter. - Pagination with
PageableHandlerMethodArgumentResolver, using the page and size query string parameters.
the react-admin Data Provider request example:
- GET_LIST => GET http://my.api.url/posts?keyword=&page=0&size=10&sort=id,asc
- GET_ONE => GET http://my.api.url/posts/123
- GET_MANY => GET http://my.api.url/posts?id=1234&id=5678
- GET_MANY_REFERENCE => GET http://my.api.url/comments?postId=&page=0&size=10&sort=id,asc
- CREATE => POST http://my.api.url/posts
- UPDATE => PUT http://my.api.url/posts/123
- UPDATE_MANY => multiple call UPDATE
- DELETE => DELETE http://my.api.url/posts/123
- DELETE_MANY => multiple call DELETE