diff --git a/README.md b/README.md
index 5981922c..8ca92b85 100644
--- a/README.md
+++ b/README.md
@@ -80,7 +80,7 @@ npm run pack
### 免责声明
本项目**不开发或者破解直接获取音频数据**的功能,所有音频数据均来自**第三方接口**!
-本软件仅用于**测试 `electron 6.x` 在各种系统上的兼容性**及用于**对比各大音乐平台歌单、排行榜等数据列表的差异性**,使用本软件产生的**任何涉及版权相关的数据**请于**24小时内删除**。
+本软件仅用于**测试 `electron 7` 在各种系统上的兼容性**及用于**对比各大音乐平台歌单、排行榜等数据列表的差异性**,使用本软件产生的**任何涉及版权相关的数据**请于**24小时内删除**。
本软件仅用于学习交流使用,禁止用于商业用途,使用本软件所造成的的后果由使用者承担!
若对此有疑问请 mail to: lyswhut@qq.com
diff --git a/publish/changeLog.md b/publish/changeLog.md
index da521d70..14019c0b 100644
--- a/publish/changeLog.md
+++ b/publish/changeLog.md
@@ -4,5 +4,5 @@
#### 修复
-- 修复酷我源**搜索提示、排行榜**无法获取的问题
+- 修复酷我源**搜索提示**、**排行榜**无法获取的问题
- 修复咪咕源无法播放的问题
diff --git a/src/renderer/utils/music/kw/leaderboard.js b/src/renderer/utils/music/kw/leaderboard.js
index 7c9a7b6a..1de9f1e4 100644
--- a/src/renderer/utils/music/kw/leaderboard.js
+++ b/src/renderer/utils/music/kw/leaderboard.js
@@ -66,8 +66,6 @@ export default {
},
limit: 30,
- token: null,
- isGetingToken: false,
_cancelRequestObj: null,
_cancelPromiseCancelFn: null,
_cancelRequestObj2: null,
@@ -95,13 +93,8 @@ export default {
cancelHttp(this._cancelRequestObj2)
this._cancelPromiseCancelFn2(new Error('取消http请求'))
}
- if (this.isGetingToken) throw new Error('正在获取token')
- let token = this.token
- if (!token) {
- this.isGetingToken = true
- token = await getToken()
- this.isGetingToken = false
- }
+ let token = window.kw_token.token
+ if (!token) token = await getToken()
return new Promise((resolve, reject) => {
this._cancelPromiseCancelFn2 = reject
this._cancelRequestObj2 = httpGet(url, {
@@ -115,9 +108,9 @@ export default {
this._cancelPromiseCancelFn2 = null
if (err) {
console.log(err)
- reject(err)
+ return reject(err)
}
- this.token = matchToken(resp.headers)
+ window.kw_token.token = matchToken(resp.headers)
resolve(body)
})
})
diff --git a/src/renderer/utils/music/kw/util.js b/src/renderer/utils/music/kw/util.js
index faf7220d..854773b8 100644
--- a/src/renderer/utils/music/kw/util.js
+++ b/src/renderer/utils/music/kw/util.js
@@ -17,8 +17,12 @@ export const matchToken = headers => {
}
}
+const wait = time => new Promise(resolve => setTimeout(() => resolve(), time))
+
+
export const getToken = () => new Promise((resolve, reject) => {
- if (window.kw_token.isGetingToken) reject(new Error('正在获取token'))
+ if (window.kw_token.isGetingToken) return wait(1000).then(() => getToken().then(token => resolve(token)))
+ if (window.kw_token.token) return resolve(window.kw_token.token)
window.kw_token.isGetingToken = true
httpGet('http://www.kuwo.cn', (err, resp) => {
window.kw_token.isGetingToken = false