@@ -15,48 +15,47 @@ export const handlers = [
1515 http . get (
1616 'https://example.com/echo' ,
1717 async ( { request, params, cookies, requestId } ) => {
18- return HttpResponse . json (
19- {
20- ...request ,
21- params,
22- cookies,
23- requestId,
24- url : new URL ( request . url ) ,
25- headers : headersToObject ( request . headers ) ,
26- } ,
27- { headers : request . headers }
28- )
18+ return HttpResponse . json ( {
19+ ...request ,
20+ params,
21+ cookies,
22+ requestId,
23+ url : new URL ( request . url ) ,
24+ headers : headersToObject ( request . headers ) ,
25+ } )
2926 }
3027 ) ,
3128 http . post (
3229 'https://example.com/echo' ,
3330 async ( { request, cookies, params, requestId } ) => {
34- const body = headersToObject ( request . headers ) [ 'content-type' ] === 'text/html'
35- ? await request . text ( )
36- : await request . json ( )
31+ let body
3732
38- return HttpResponse . json (
39- {
40- ...request ,
41- cookies,
42- params,
43- requestId,
44- body,
45- url : new URL ( request . url ) ,
46- headers : request ?. headers
47- ? headersToObject ( request . headers )
48- : request ?. headers ,
49- } ,
50- { headers : request . headers }
51- )
33+ try {
34+ body =
35+ headersToObject ( request . headers ) [ 'content-type' ] === 'text/html'
36+ ? await request . text ( )
37+ : await request . json ( )
38+ } catch ( err ) {
39+ body = request . body
40+ }
41+
42+ return HttpResponse . json ( {
43+ ...request ,
44+ cookies,
45+ params,
46+ requestId,
47+ body,
48+ url : new URL ( request . url ) ,
49+ headers : headersToObject ( request . headers ) ,
50+ } )
5251 }
5352 ) ,
54- http . get ( 'https://example.com/success' , ( ) => {
55- return HttpResponse . json ( { value : 'success' } )
56- } ) ,
57- http . post ( 'https://example.com/success' , ( { request } ) => {
58- return HttpResponse . json ( { value : 'success' } )
59- } ) ,
53+ http . get ( 'https://example.com/success' , ( ) =>
54+ HttpResponse . json ( { value : 'success' } )
55+ ) ,
56+ http . post ( 'https://example.com/success' , ( ) =>
57+ HttpResponse . json ( { value : 'success' } )
58+ ) ,
6059 http . get ( 'https://example.com/empty' , ( ) => new HttpResponse ( '' ) ) ,
6160 http . get ( 'https://example.com/error' , ( ) =>
6261 HttpResponse . json ( { value : 'error' } , { status : 500 } )
0 commit comments