mirror of
https://github.com/lush2020/CF-Workers-SUB.git
synced 2026-03-21 02:52:38 +08:00
更新_worker.js,添加对subconverter请求的处理逻辑,优化用户代理检测
This commit is contained in:
@@ -91,9 +91,9 @@ export default {
|
||||
MainData = 自建节点;
|
||||
urls = await ADD(订阅链接);
|
||||
await sendMessage(`#获取订阅 ${FileName}`, request.headers.get('CF-Connecting-IP'), `UA: ${userAgentHeader}</tg-spoiler>\n域名: ${url.hostname}\n<tg-spoiler>入口: ${url.pathname + url.search}</tg-spoiler>`);
|
||||
|
||||
const isSubConverterRequest = request.headers.get('subconverter-request') || request.headers.get('subconverter-version') || userAgent.includes('subconverter');
|
||||
let 订阅格式 = 'base64';
|
||||
if (!(userAgent.includes('null') || userAgent.includes('subconverter') || userAgent.includes('nekobox') || userAgent.includes(('CF-Workers-SUB').toLowerCase()))) {
|
||||
if (!(userAgent.includes('null') || isSubConverterRequest || userAgent.includes('nekobox') || userAgent.includes(('CF-Workers-SUB').toLowerCase()))) {
|
||||
if (userAgent.includes('sing-box') || userAgent.includes('singbox') || url.searchParams.has('sb') || url.searchParams.has('singbox')) {
|
||||
订阅格式 = 'singbox';
|
||||
} else if (userAgent.includes('surge') || url.searchParams.has('surge')) {
|
||||
@@ -126,7 +126,7 @@ export default {
|
||||
console.log(请求订阅响应内容);
|
||||
req_data += 请求订阅响应内容[0].join('\n');
|
||||
订阅转换URL += "|" + 请求订阅响应内容[1];
|
||||
if (订阅格式 == 'base64' && !userAgent.includes('subconverter') && 请求订阅响应内容[1].includes('://')) {
|
||||
if (订阅格式 == 'base64' && !isSubConverterRequest && 请求订阅响应内容[1].includes('://')) {
|
||||
subConverterUrl = `${subProtocol}://${subConverter}/sub?target=mixed&url=${encodeURIComponent(请求订阅响应内容[1])}&insert=false&config=${encodeURIComponent(subConfig)}&emoji=true&list=false&tfo=false&scv=true&fdn=false&sort=false&new_name=true`;
|
||||
try {
|
||||
const subConverterResponse = await fetch(subConverterUrl, { headers: { 'User-Agent': 'v2rayN/CF-Workers-SUB (https://github.com/cmliu/CF-Workers-SUB)' } });
|
||||
|
||||
Reference in New Issue
Block a user