@@ -261,10 +261,22 @@ async function downloadSubscription(req, res) {
261261 $arguments . flowUrl ,
262262 ) ;
263263 if ( flowInfo ) {
264- res . set (
265- 'subscription-userinfo' ,
266- normalizeFlowHeader ( flowInfo ) ,
267- ) ;
264+ const headers = normalizeFlowHeader ( flowInfo , true ) ;
265+ if ( headers ?. [ 'subscription-userinfo' ] ) {
266+ res . set (
267+ 'subscription-userinfo' ,
268+ headers [ 'subscription-userinfo' ] ,
269+ ) ;
270+ }
271+ if ( headers ?. [ 'profile-web-page-url' ] ) {
272+ res . set (
273+ 'profile-web-page-url' ,
274+ headers [ 'profile-web-page-url' ] ,
275+ ) ;
276+ }
277+ if ( headers ?. [ 'plan-name' ] ) {
278+ res . set ( 'plan-name' , headers [ 'plan-name' ] ) ;
279+ }
268280 }
269281 }
270282 } catch ( err ) {
@@ -296,12 +308,26 @@ async function downloadSubscription(req, res) {
296308 } else {
297309 subUserInfo = sub . subUserinfo ;
298310 }
299- res . set (
300- 'subscription-userinfo' ,
301- normalizeFlowHeader (
302- [ subUserInfo , flowInfo ] . filter ( ( i ) => i ) . join ( ';' ) ,
303- ) ,
311+
312+ const headers = normalizeFlowHeader (
313+ [ subUserInfo , flowInfo ] . filter ( ( i ) => i ) . join ( ';' ) ,
314+ true ,
304315 ) ;
316+ if ( headers ?. [ 'subscription-userinfo' ] ) {
317+ res . set (
318+ 'subscription-userinfo' ,
319+ headers [ 'subscription-userinfo' ] ,
320+ ) ;
321+ }
322+ if ( headers ?. [ 'profile-web-page-url' ] ) {
323+ res . set (
324+ 'profile-web-page-url' ,
325+ headers [ 'profile-web-page-url' ] ,
326+ ) ;
327+ }
328+ if ( headers ?. [ 'plan-name' ] ) {
329+ res . set ( 'plan-name' , headers [ 'plan-name' ] ) ;
330+ }
305331 }
306332
307333 if ( platform === 'JSON' ) {
@@ -573,10 +599,22 @@ async function downloadCollection(req, res) {
573599 . filter ( ( i ) => i )
574600 . join ( '; ' ) ;
575601 if ( subUserInfo ) {
576- res . set (
577- 'subscription-userinfo' ,
578- normalizeFlowHeader ( subUserInfo ) ,
579- ) ;
602+ const headers = normalizeFlowHeader ( subUserInfo , true ) ;
603+ if ( headers ?. [ 'subscription-userinfo' ] ) {
604+ res . set (
605+ 'subscription-userinfo' ,
606+ headers [ 'subscription-userinfo' ] ,
607+ ) ;
608+ }
609+ if ( headers ?. [ 'profile-web-page-url' ] ) {
610+ res . set (
611+ 'profile-web-page-url' ,
612+ headers [ 'profile-web-page-url' ] ,
613+ ) ;
614+ }
615+ if ( headers ?. [ 'plan-name' ] ) {
616+ res . set ( 'plan-name' , headers [ 'plan-name' ] ) ;
617+ }
580618 }
581619 if ( platform === 'JSON' ) {
582620 if ( resultFormat === 'nezha' ) {
0 commit comments