From fe44581a6139a3a06998730c836ee3ed51d8cb97 Mon Sep 17 00:00:00 2001 From: lyswhut Date: Fri, 25 Oct 2019 21:36:07 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=90=9C=E7=B4=A2=E6=8F=90?= =?UTF-8?q?=E7=A4=BA=E5=A4=B1=E6=95=88=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- publish/changeLog.md | 4 ++++ src/renderer/utils/music/kw/tempSearch.js | 29 +++++++++-------------- 2 files changed, 15 insertions(+), 18 deletions(-) diff --git a/publish/changeLog.md b/publish/changeLog.md index 05bc5926..cf657ab7 100644 --- a/publish/changeLog.md +++ b/publish/changeLog.md @@ -2,3 +2,7 @@ - 新增窗口大小设置,若觉得软件窗口小可以到设置页调大点 - 新增定位当前播放歌曲,点击播放栏左侧的**歌曲图片**可在播放列表定位当前播放的歌曲(该功能对播放下载列表的歌曲无效) + +#### 修复 + +- 修复搜索提示失效的问题 diff --git a/src/renderer/utils/music/kw/tempSearch.js b/src/renderer/utils/music/kw/tempSearch.js index 584d5fec..d484b29c 100644 --- a/src/renderer/utils/music/kw/tempSearch.js +++ b/src/renderer/utils/music/kw/tempSearch.js @@ -1,25 +1,21 @@ -import { httpGet, cancelHttp } from '../../request' +import { httpFetch } from '../../request' import { decodeName } from '../../index' export default { regExps: { relWord: /RELWORD=(.+)/, }, - _musicTempSearchRequestObj: null, - _musicTempSearchPromiseCancelFn: null, + requestObj: null, tempSearch(str) { this.cancelTempSearch() - return new Promise((resolve, reject) => { - this._musicTempSearchPromiseCancelFn = reject - this._musicTempSearchRequestObj = httpGet(`http://www.kuwo.cn/api/www/search/searchKey?key=${encodeURIComponent(str)}`, (err, resp, body) => { - this._musicTempSearchRequestObj = null - this._musicTempSearchPromiseCancelFn = null - if (err) { - console.log(err) - reject(err) - } - resolve(body) - }) + this.requestObj = httpFetch(`http://www.kuwo.cn/api/www/search/searchKey?key=${encodeURIComponent(str)}`, { + headers: { + Referer: 'http://www.kuwo.cn/', + }, + }) + return this.requestObj.promise.then(({ statusCode, body }) => { + if (statusCode != 200 || body.code !== 200) return Promise.reject(new Error('请求失败')) + return body }) }, handleResult(rawData) { @@ -29,10 +25,7 @@ export default { }) }, cancelTempSearch() { - if (this._musicTempSearchRequestObj != null) { - cancelHttp(this._musicTempSearchRequestObj) - this._musicTempSearchPromiseCancelFn(new Error('取消http请求')) - } + if (this.requestObj && this.requestObj.cancelHttp) this.requestObj.cancelHttp() }, search(str) { return this.tempSearch(str).then(result => this.handleResult(result.data))