File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 11import axios from 'axios' ;
2+ import { isObject , forEach } from 'lodash' ;
3+
4+ const paramsSerializer = ( params ) => {
5+ const parts = [ ] ;
6+
7+ forEach ( params , ( value , key ) => {
8+ if ( value === null || typeof value === 'undefined' ) {
9+ return ;
10+ }
11+
12+ let k = key ;
13+ let v = value ;
14+ if ( Array . isArray ( v ) ) {
15+ k += '[]' ;
16+ } else {
17+ v = [ v ] ;
18+ }
19+
20+ forEach ( v , ( val ) => {
21+ let finalValue = val ;
22+ if ( isObject ( finalValue ) ) {
23+ finalValue = JSON . stringify ( finalValue ) ;
24+ }
25+ parts . push ( `${ k } =${ finalValue } ` ) ;
26+ } ) ;
27+ } ) ;
28+
29+ return parts . join ( '&' ) ;
30+ } ;
231
332export default class HttpDataLoader {
433 constructor ( config ) {
@@ -13,6 +42,7 @@ export default class HttpDataLoader {
1342 url : req . resourcePath ,
1443 headers : req . params . headers ,
1544 params : req . params . query ,
45+ paramsSerializer,
1646 method : req . method . toLowerCase ( ) ,
1747 data : req . params . body ,
1848 } ) ;
You can’t perform that action at this time.
0 commit comments