@@ -12,12 +12,12 @@ export default {
12
12
return new Response ( index_html ( env ) , { headers : { 'Content-Type' : 'text/html' } } )
13
13
} else if ( pathname === '/v1/logs' && request . method === 'POST' ) {
14
14
return await logProxy ( request )
15
- } else if ( pathname === '/v1/traces' && request . method === 'POST' ) {
16
- return await traceProxy ( request )
17
- } else if ( pathname === '/v1/traces' && request . method === 'OPTIONS' ) {
18
- return tracePreflight ( request )
19
- } else if ( pathname === '/v1/info' ) {
20
- return await fetch ( `https://logfire-api.pydantic.dev ${ pathname } ` , request )
15
+ } else if ( pathname . startsWith ( '/v1/' ) ) {
16
+ if ( request . method === 'OPTIONS' ) {
17
+ return preflight ( request )
18
+ } else {
19
+ return await pureProxy ( request , pathname )
20
+ }
21
21
} else {
22
22
return new Response ( `404: '${ request . method } ${ pathname } ' not found` , { status : 404 } )
23
23
}
@@ -80,8 +80,8 @@ async function logProxy(request: Request): Promise<Response> {
80
80
}
81
81
}
82
82
83
- async function traceProxy ( request : Request ) : Promise < Response > {
84
- const response = await fetch ( ' https://logfire-api.pydantic.dev/v1/traces' , request )
83
+ async function pureProxy ( request : Request , pathname : string ) : Promise < Response > {
84
+ const response = await fetch ( ` https://logfire-api.pydantic.dev${ pathname } ` , request )
85
85
// add CORS headers
86
86
return new Response ( response . body , {
87
87
status : response . status ,
@@ -93,7 +93,7 @@ async function traceProxy(request: Request): Promise<Response> {
93
93
} )
94
94
}
95
95
96
- const tracePreflight = ( request : Request ) =>
96
+ const preflight = ( request : Request ) =>
97
97
new Response ( null , {
98
98
status : 204 ,
99
99
headers : {
0 commit comments