@@ -309,7 +309,7 @@ const server = createServer((request, response) => {
309309 asset : '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913' ,
310310 payTo : '0x549c82e6bfc54bdae9a2073744cbc2af5d1fc6d1' ,
311311 } ] ,
312- } ] ,
312+ } , ` ${ serverUrl } /api/raw-resource` ] ,
313313 } ) )
314314 return
315315 }
@@ -395,6 +395,26 @@ const server = createServer((request, response) => {
395395 return
396396 }
397397
398+ if ( request . url === '/api/raw-resource' ) {
399+ response . statusCode = 402
400+ response . setHeader ( 'content-type' , 'application/json' )
401+ response . setHeader ( 'access-control-allow-origin' , '*' )
402+ response . end ( JSON . stringify ( {
403+ x402Version : 2 ,
404+ error : 'Payment required' ,
405+ accepts : [ {
406+ scheme : 'exact' ,
407+ network : 'eip155:8453' ,
408+ amount : '30000' ,
409+ asset : '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913' ,
410+ payTo : '0x549c82e6bfc54bdae9a2073744cbc2af5d1fc6d1' ,
411+ resource : `${ serverUrl } /api/raw-resource` ,
412+ maxTimeoutSeconds : 60 ,
413+ } ] ,
414+ } ) )
415+ return
416+ }
417+
398418 if ( request . url === '/gateway/pay/v1/protected' ) {
399419 response . statusCode = 402
400420 response . setHeader ( 'content-type' , 'application/json' )
@@ -864,7 +884,9 @@ try {
864884 ] , { cwd : new URL ( '..' , import . meta. url ) } )
865885
866886 assert . match ( resourceManifest . stdout , / p r e m i u m \/ r o u t i n g / )
887+ assert . match ( resourceManifest . stdout , / r a w - r e s o u r c e / )
867888 assert . match ( resourceManifest . stdout , / \$ 0 \. 0 2 / )
889+ assert . match ( resourceManifest . stdout , / \$ 0 \. 0 3 / )
868890 assert . match ( resourceManifest . stdout , / e i p 1 5 5 : 8 4 5 3 / )
869891 assert . doesNotMatch ( resourceManifest . stdout , / D o c u m e n t d o e s n o t e x p o s e / )
870892
0 commit comments