@@ -28,6 +28,8 @@ const requestHandler = (request, response) => {
28
28
29
29
log . info ( `Request recived, '${ request . method } : ${ request . url } '` ) ;
30
30
debug ( '_config' , _config ) ;
31
+ // Explicitly remove or override the X-Powered-By header
32
+ response . setHeader ( 'X-Powered-By' , '' ) ;
31
33
return Promise . resolve ( ) . then ( ( ) => {
32
34
// Should be a POST call.
33
35
if ( request . method && request . method !== 'POST' ) {
@@ -152,14 +154,28 @@ const requestHandler = (request, response) => {
152
154
response . setHeader ( 'Content-Type' , 'application/json' ) ;
153
155
response . statusCode = value . statusCode ;
154
156
response . statusMessage = value . statusMessage ;
155
- response . end ( JSON . stringify ( value . body ) ) ;
157
+ // Example: Return only safe fields
158
+ const safeBody = {
159
+ data : value . body ?. data || value ?. body || null
160
+ } ;
161
+
162
+ response . end ( JSON . stringify ( safeBody ) ) ;
156
163
return ;
157
164
} ) . catch ( ( error ) => {
158
165
debug ( 'Error' , error ) ;
166
+ const safeError = {
167
+ statusCode : error . statusCode || 500 ,
168
+ statusMessage : error . statusMessage || 'Internal Server Error' ,
169
+ body : typeof error . body === 'string'
170
+ ? error . body
171
+ : ( typeof error . body === 'object' && error . body !== null
172
+ ? JSON . stringify ( error . body )
173
+ : 'An unexpected error occurred.' ) ,
174
+ } ;
159
175
response . setHeader ( 'Content-Type' , 'application/json' ) ;
160
176
response . statusCode = error . statusCode ;
161
177
response . statusMessage = error . statusMessage ;
162
- response . end ( JSON . stringify ( { error : { message : error . body } } ) ) ;
178
+ response . end ( JSON . stringify ( { error : { message : safeError . body } } ) ) ;
163
179
return ;
164
180
} ) ;
165
181
} ;
0 commit comments