diff --git a/src/components/Setting.vue b/src/components/Setting.vue index 61efae5..9857d8e 100644 --- a/src/components/Setting.vue +++ b/src/components/Setting.vue @@ -155,11 +155,12 @@ - + 取消 + 重置 确定 @@ -304,7 +305,7 @@ export default { setting.find().then(res => { this.d = res this.setting = this.d - if (!this.setting.defaultParseURL) this.setting.defaultParseURL = 'https://jx.url.js.cn/?url=' // 硬编码 默认解析地址 + if (!this.setting.defaultParseURL) this.configDefaultParseURL() }) }, getSites () { @@ -341,7 +342,16 @@ export default { this.d.excludeRootClasses = !this.d.excludeRootClasses this.updateSettingEvent() }, - configDefaultParseURL () { + async get7kParseURL () { + this.$message.info('正在获取7K源解析地址...') + const parseURL = await zy.get7kParseURL() + if (parseURL.startsWith('http')) { + this.$message.success('获取成功,更新应用默认解析接口地址...') + this.setting.defaultParseURL = parseURL + } + }, + async configDefaultParseURL () { + if (!this.setting.defaultParseURL) await this.get7kParseURL() this.d.defaultParseURL = this.setting.defaultParseURL.trim() this.show.configDefaultParseUrlDialog = false this.updateSettingEvent() diff --git a/src/lib/dexie/iniData/Sites.json b/src/lib/dexie/iniData/Sites.json index d418597..2fc124e 100644 --- a/src/lib/dexie/iniData/Sites.json +++ b/src/lib/dexie/iniData/Sites.json @@ -35,7 +35,7 @@ "name": "7K资源", "api": "https://zy.7kjx.com/cjapi.php", "download": "", - "jiexiUrl": "https://jx.7kjx.com/?url=", + "jiexiUrl": "default", "group": "默认", "isActive": true }, diff --git a/src/lib/site/tools.js b/src/lib/site/tools.js index 9792f03..353429a 100644 --- a/src/lib/site/tools.js +++ b/src/lib/site/tools.js @@ -483,6 +483,15 @@ const zy = { }) }) }, + get7kParseURL () { + return new Promise((resolve, reject) => { + axios.get('https://zy.7kjx.com/').then(res => { + const $ = cheerio.load(res.data) + const parseURL = $('body > div.container > div > div.stui-pannel > div.col-pd > p:contains("解析接口:")').first().find('a').text() + resolve(parseURL) + }).catch(err => { reject(err) }) + }) + }, proxy () { return new Promise((resolve, reject) => { setting.find().then(db => {