- 移除 bd/mg 两平台及磁盘残留产物;清理 api-test 死脚本、musicSdk/message+options 死模块、infSign vendor - musicSdk/ 改名 sdk/;src/common、src/auth、src/apis 整体移入 sdk/,依赖方向定为 src → sdk 严格单向 - src/ 手写 JS 全量转 .ts,删除 JS 类型垫片 modules.d.ts;源码 import 统一 .ts 后缀 - Node 原生类型剥离直接运行 .ts(engines >=22.18),取消 tsc 发射产物,tsc 仅类型检查(pnpm typecheck) - 删除 kwdes 备用实现与 src/index.ts 转发垫片;测试移至 test/smoke-test.ts - common/request.ts 补显式导出类型;修复 set-cookie 单值形态、ApiError 类字段等隐患 验证:tsc 零错误,smoke-test 41/41
49 lines
1.5 KiB
TypeScript
49 lines
1.5 KiB
TypeScript
import { httpFetch } from '../request.ts'
|
|
|
|
export default {
|
|
getPic(songInfo) {
|
|
const requestObj = httpFetch(
|
|
'http://media.store.kugou.com/v1/get_res_privilege',
|
|
{
|
|
method: 'POST',
|
|
headers: {
|
|
'KG-RC': '1',
|
|
'KG-THash': 'expand_search_manager.cpp:852736169:451',
|
|
'User-Agent': 'KuGou2012-9020-ExpandSearchManager',
|
|
},
|
|
body: {
|
|
appid: 1001,
|
|
area_code: '1',
|
|
behavior: 'play',
|
|
clientver: '9020',
|
|
need_hash_offset: 1,
|
|
relate: 1,
|
|
resource: [
|
|
{
|
|
album_audio_id:
|
|
songInfo.songmid.length == 32 // 修复歌曲ID存储变更导致图片获取失败的问题
|
|
? songInfo.audioId.split('_')[0]
|
|
: songInfo.songmid,
|
|
album_id: songInfo.albumId,
|
|
hash: songInfo.hash,
|
|
id: 0,
|
|
name: `${songInfo.singer} - ${songInfo.name}.mp3`,
|
|
type: 'audio',
|
|
},
|
|
],
|
|
token: '',
|
|
userid: 2626431536,
|
|
vip: 1,
|
|
},
|
|
},
|
|
)
|
|
return requestObj.promise.then(({ body }) => {
|
|
if (body.error_code !== 0) return Promise.reject(new Error('图片获取失败'))
|
|
let info = body.data[0].info
|
|
const img = info.imgsize ? info.image.replace('{size}', info.imgsize[0]) : info.image
|
|
if (!img) return Promise.reject(new Error('Pic get failed'))
|
|
return img
|
|
})
|
|
},
|
|
}
|