@@ -35,6 +35,8 @@ export default (fastify, options, done) => {
3535 const jsonUrl = `${ protocol } ://${ hostname } /json/` ;
3636 const httpUrl = `${ protocol } ://${ hostname } /http` ;
3737 const mediaProxyUrl = `${ protocol } ://${ hostname } /mediaProxy` ;
38+ const hostUrl = `${ hostname . split ( ':' ) [ 0 ] } ` ;
39+ const fServer = fastify . server ;
3840
3941 // console.log(`proxyUrl:${proxyUrl}`);
4042 function getEnv ( moduleName ) {
@@ -43,7 +45,7 @@ export default (fastify, options, done) => {
4345 return proxyUrl
4446 } ;
4547 return {
46- proxyUrl, publicUrl, jsonUrl, httpUrl, mediaProxyUrl, getProxyUrl, ext : moduleExt
48+ proxyUrl, publicUrl, jsonUrl, httpUrl, mediaProxyUrl, hostUrl , fServer , getProxyUrl, ext : moduleExt
4749 }
4850 }
4951
@@ -185,15 +187,29 @@ export default (fastify, options, done) => {
185187 const proxyPath = request . params [ '*' ] ; // 捕获整个路径
186188 fastify . log . info ( `try proxy for ${ moduleName } -> ${ proxyPath } : ${ JSON . stringify ( query ) } ` ) ;
187189 const rangeHeader = request . headers . range ; // 获取客户端的 Range 请求头
190+
191+ const moduleExt = query . extend || '' ;
188192 const protocol = request . protocol ;
189193 const hostname = request . hostname ;
190- const proxyUrl = `${ protocol } ://${ hostname } ${ request . url } ` . split ( '?' ) [ 0 ] . replace ( proxyPath , '' ) + '?do=js' ;
191- // console.log(`proxyUrl:${proxyUrl}`);
192- const env = {
193- proxyUrl, proxyPath, getProxyUrl : function ( ) {
194+
195+ const publicUrl = `${ protocol } ://${ hostname } /public/` ;
196+ const jsonUrl = `${ protocol } ://${ hostname } /json/` ;
197+ const httpUrl = `${ protocol } ://${ hostname } /http` ;
198+ const mediaProxyUrl = `${ protocol } ://${ hostname } /mediaProxy` ;
199+ const hostUrl = `${ hostname . split ( ':' ) [ 0 ] } ` ;
200+ const fServer = fastify . server ;
201+
202+ function getEnv ( moduleName ) {
203+ const proxyUrl = `${ protocol } ://${ hostname } /proxy/${ moduleName } /?do=js` ;
204+ const getProxyUrl = function ( ) {
194205 return proxyUrl
195- } ,
196- } ;
206+ } ;
207+ return {
208+ proxyUrl, publicUrl, jsonUrl, httpUrl, mediaProxyUrl, hostUrl, fServer, getProxyUrl, ext : moduleExt
209+ }
210+ }
211+
212+ const env = getEnv ( moduleName ) ;
197213 try {
198214 const backRespList = await drpy . proxy ( modulePath , env , query ) ;
199215 const statusCode = backRespList [ 0 ] ;
@@ -267,14 +283,29 @@ export default (fastify, options, done) => {
267283 if ( ! existsSync ( jxPath ) ) {
268284 return reply . status ( 404 ) . send ( { error : `解析 ${ jxName } not found` } ) ;
269285 }
286+ const moduleExt = query . extend || '' ;
270287 const protocol = request . protocol ;
271288 const hostname = request . hostname ;
272- const proxyUrl = `${ protocol } ://${ hostname } ${ request . url } ` . split ( '?' ) [ 0 ] . replace ( '/parse/' , '/proxy/' ) + '/?do=js' ;
273- const env = {
274- proxyUrl, getProxyUrl : function ( ) {
289+
290+ const publicUrl = `${ protocol } ://${ hostname } /public/` ;
291+ const jsonUrl = `${ protocol } ://${ hostname } /json/` ;
292+ const httpUrl = `${ protocol } ://${ hostname } /http` ;
293+ const mediaProxyUrl = `${ protocol } ://${ hostname } /mediaProxy` ;
294+ const hostUrl = `${ hostname . split ( ':' ) [ 0 ] } ` ;
295+ const fServer = fastify . server ;
296+
297+ function getEnv ( moduleName ) {
298+ // const proxyUrl = `${protocol}://${hostname}/proxy/${moduleName}/?do=js`;
299+ const proxyUrl = `${ protocol } ://${ hostname } ${ request . url } ` . split ( '?' ) [ 0 ] . replace ( '/parse/' , '/proxy/' ) + '/?do=js' ;
300+ const getProxyUrl = function ( ) {
275301 return proxyUrl
302+ } ;
303+ return {
304+ proxyUrl, publicUrl, jsonUrl, httpUrl, mediaProxyUrl, hostUrl, getProxyUrl, fServer, ext : moduleExt
276305 }
277- } ;
306+ }
307+
308+ const env = getEnv ( '' ) ;
278309 try {
279310 const backResp = await drpy . jx ( jxPath , env , query ) ;
280311 const statusCode = 200 ;
0 commit comments