@@ -59,13 +59,14 @@ export class FeatureQuerier {
5959 queryUrl . searchParams . set ( 'where' , `${ this . _config . observationIdField } = ${ observationId } ` ) ;
6060 }
6161 queryUrl . searchParams . set ( 'outFields' , this . outFields ( fields ) )
62- queryUrl . searchParams . set ( 'returnGeometry' , this . returnGeometry ( geometry ) )
63-
62+ queryUrl . searchParams . set ( 'returnGeometry' , geometry === false ? 'false' : 'true' )
63+ this . _console . info ( 'ArcGIS query: ' + queryUrl )
64+
6465 const queryResponse = await request ( queryUrl . toString ( ) , {
6566 authentication : this . _identityManager
6667 } ) ;
6768
68- this . _console . info ( 'ArcGIS response for ' + queryUrl + ' ' + queryResponse )
69+ this . _console . info ( 'ArcGIS response for ' + queryUrl + ' ' + queryResponse . toString )
6970 const result = JSON . parse ( queryResponse ) as QueryObjectResult
7071 response ( result ) ;
7172 }
@@ -80,9 +81,13 @@ export class FeatureQuerier {
8081 const queryUrl = new URL ( this . _url )
8182 queryUrl . searchParams . set ( 'where' , `${ this . _config . observationIdField } IS NOT NULL` ) ;
8283 queryUrl . searchParams . set ( 'outFields' , this . outFields ( fields ) ) ;
83- queryUrl . searchParams . set ( 'returnGeometry' , this . returnGeometry ( geometry ) ) ;
84+ queryUrl . searchParams . set ( 'returnGeometry' , geometry === false ? 'false' : 'true' ) ;
85+
86+ this . _console . info ( 'ArcGIS query: ' + queryUrl )
87+
8488 const queryResponse = await request ( queryUrl . toString ( ) , {
85- authentication : this . _identityManager
89+ authentication : this . _identityManager ,
90+ params : { f : 'json' }
8691 } ) ;
8792
8893 this . _console . info ( 'ArcGIS response for ' + queryUrl + ' ' + queryResponse )
@@ -100,7 +105,9 @@ export class FeatureQuerier {
100105 queryUrl . searchParams . set ( 'where' , `${ field } IS NOT NULL` ) ;
101106 queryUrl . searchParams . set ( 'returnDistinctValues' , 'true' ) ;
102107 queryUrl . searchParams . set ( 'outFields' , this . outFields ( [ field ] ) ) ;
103- queryUrl . searchParams . set ( 'returnGeometry' , this . returnGeometry ( false ) ) ;
108+ queryUrl . searchParams . set ( 'returnGeometry' , 'false' ) ;
109+ this . _console . info ( 'ArcGIS query: ' + queryUrl )
110+
104111 const queryResponse = await request ( queryUrl . toString ( ) , {
105112 authentication : this . _identityManager
106113
@@ -116,31 +123,11 @@ export class FeatureQuerier {
116123 * @returns out fields
117124 */
118125 private outFields ( fields ?: string [ ] ) : string {
119- let outFields = '&outFields='
120126 if ( fields != null && fields . length > 0 ) {
121- for ( let i = 0 ; i < fields . length ; i ++ ) {
122- if ( i > 0 ) {
123- outFields += ","
124- }
125- outFields += fields [ i ]
126- }
127- } else {
128- outFields += '*'
129- }
130- return outFields
131- }
132-
133- /**
134- * Build the return geometry query parameter
135- * @param fields query fields
136- * @returns out fields
137- */
138- private returnGeometry ( geometry ?: boolean ) : string {
139- let returnGeometry = ''
140- if ( geometry != null && ! geometry ) {
141- returnGeometry = '&returnGeometry=false'
127+ return fields . join ( ',' ) ;
128+ } else {
129+ return '*' ;
142130 }
143- return returnGeometry
144131 }
145132
146133}
0 commit comments