移除试听接口

This commit is contained in:
lyswhut 2023-11-27 14:41:24 +08:00
parent 4611e79719
commit c28c0196a9
10 changed files with 17 additions and 240 deletions

View File

@ -2,7 +2,7 @@ const defaultSetting: LX.AppSetting = {
version: '2.0',
'common.isAutoTheme': false,
'common.langId': null,
'common.apiSource': 'empty',
'common.apiSource': '',
'common.sourceNameType': 'alias',
'common.shareType': 'system',
'common.isAgreePact': false,

View File

@ -38,8 +38,7 @@ const Content = () => {
<Text selectable style={styles.bold} ></Text>
<Text selectable style={styles.text} >1.1 APP获取的数据相同</Text>
<Text selectable style={styles.text} >1.2 使线线使使</Text>
<Text selectable style={styles.text} >1.3 APP获取的歌曲链接相同APP播放</Text>
<Text selectable style={styles.text} >1.4 使使{'\n'}</Text>
<Text selectable style={styles.text} >1.3 使使{'\n'}</Text>
<Text selectable style={styles.bold} ></Text>
<Text selectable style={styles.text} >2.1 使使 <Text style={styles.bold}>24</Text> 使{'\n'}</Text>
<Text selectable style={styles.bold} ></Text>

View File

@ -48,7 +48,11 @@ const ListItem = ({ item, activeId, onRemove, onChangeAllowShowUpdateAlert }: {
) : null
}
</Text>
{
item.description ? (
<Text size={12} color={theme['c-font-label']}>{item.description}</Text>
) : null
}
<CheckBox check={item.allowShowUpdateAlert} label={t('user_api_allow_show_update_alert')} onChange={changeAllowShowUpdateAlert} size={0.86} />
</View>
<View style={styles.listItemRight}>

View File

@ -6,24 +6,6 @@ const sources: Array<{
disabled: boolean
supportQualitys: Partial<Record<LX.OnlineSource, LX.Quality[]>>
}> = [
{
id: 'empty',
name: 'empty',
disabled: false,
supportQualitys: {},
},
{
id: 'direct',
name: '直连接口',
disabled: false,
supportQualitys: {
kw: ['128k'],
kg: ['128k'],
tx: ['128k'],
wy: ['128k'],
mg: ['128k'],
},
},
]
export default sources

View File

@ -7,11 +7,11 @@ import apiSourceInfo from './api-source-info'
// import test_api_wy from './wy/api-test'
// import test_api_mg from './mg/api-test'
import direct_api_kg from './kg/api-direct'
import direct_api_kw from './kw/api-direct'
import direct_api_tx from './tx/api-direct'
import direct_api_wy from './wy/api-direct'
import direct_api_mg from './mg/api-direct'
// import direct_api_kg from './kg/api-direct'
// import direct_api_kw from './kw/api-direct'
// import direct_api_tx from './tx/api-direct'
// import direct_api_wy from './wy/api-direct'
// import direct_api_mg from './mg/api-direct'
import settingState from '@/store/setting/state'
@ -24,11 +24,11 @@ const apiList = {
// test_api_tx,
// test_api_wy,
// test_api_mg,
direct_api_kg,
direct_api_kw,
direct_api_tx,
direct_api_wy,
direct_api_mg,
// direct_api_kg,
// direct_api_kw,
// direct_api_tx,
// direct_api_wy,
// direct_api_mg,
// test_api_tx: require('./tx/api-test'),
// test_api_wy: require('./wy/api-test'),
// test_api_xm: require('./xm/api-test'),

View File

@ -1,22 +0,0 @@
import { httpFetch } from '../../request'
import { timeout } from '../options'
// https://github.com/listen1/listen1_chrome_extension/blob/master/js/provider/kugou.js
export default {
getMusicUrl(songInfo, type) {
const target_url = `https://wwwapi.kugou.com/yy/index.php?r=play/getdata&hash=${songInfo.hash}&platid=4&album_id=${songInfo.albumId}&mid=00000000000000000000000000000000`
const requestObj = httpFetch(target_url, {
method: 'get',
timeout,
})
requestObj.promise = requestObj.promise.then(({ body }) => {
// console.log(body)
if (body.status !== 1) return Promise.reject(new Error(body.err_code))
if (body.data.is_free_part || !body.data.play_backup_url) return Promise.reject(new Error('failed'))
return Promise.resolve({ type, url: body.data.play_backup_url })
})
return requestObj
},
}

View File

@ -1,26 +0,0 @@
import { httpFetch } from '../../request'
import { timeout } from '../options'
export default {
getMusicUrl(songInfo, type) {
const target_url = `http://www.kuwo.cn/api/v1/www/music/playUrl?mid=${songInfo.songmid}&type=music&br=${type}`
const requestObj = httpFetch(target_url, {
method: 'get',
timeout,
headers: {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:82.0) Gecko/20100101 Firefox/82.0',
Referer: 'http://kuwo.cn/',
Secret: '14da58a88a83170f11c3a63bb0ff6aec68a7487b64551a1f997356d719980a2b028f34f5',
cookie: 'Hm_Iuvt_cdb524f42f0cer9b268e4v7y734w5esq24=4cGcsx3ej3tkYfeGrFtdS2kSZ6YD3nbD',
},
credentials: 'omit',
})
requestObj.promise = requestObj.promise.then(({ body }) => {
// console.log(JSON.stringify(body))
if (body.code != 200) return Promise.reject(new Error('failed'))
return { type, url: body.data.url }
})
return requestObj
},
}

View File

@ -1,37 +0,0 @@
import { httpFetch } from '../../request'
import { timeout } from '../options'
// https://github.com/listen1/listen1_chrome_extension/blob/master/js/provider/migu.js
const qualitys = {
'128k': 'PQ',
'320k': 'HQ',
flac: 'SQ',
flac32bit: 'ZQ',
}
export default {
getMusicUrl(songInfo, type) {
const quality = qualitys[type]
const target_url = `https://app.c.nf.migu.cn/MIGUM2.0/strategy/listen-url/v2.2?netType=01&resourceType=E&songId=${songInfo.songmid}&toneFlag=${quality}`
const requestObj = httpFetch(target_url, {
method: 'get',
timeout,
headers: {
channel: '0146951',
uid: 1234,
},
})
requestObj.promise = requestObj.promise.then(({ body }) => {
// console.log(body)
let playUrl = body.data?.url
if (!playUrl) return Promise.reject(new Error('failed'))
if (playUrl.startsWith('//')) playUrl = `https:${playUrl}`
return { type, url: playUrl.replace(/\+/g, '%2B') }
})
return requestObj
},
}

View File

@ -1,77 +0,0 @@
import { httpFetch } from '../../request'
import { timeout } from '../options'
// https://github.com/listen1/listen1_chrome_extension/blob/master/js/provider/qq.js
const fileConfig = {
'128k': {
s: 'M500',
e: '.mp3',
bitrate: '128kbps',
},
'320k': {
s: 'M800',
e: '.mp3',
bitrate: '320kbps',
},
flac: {
s: 'F000',
e: '.flac',
bitrate: 'FLAC',
},
}
export default {
getMusicUrl(songInfo, type) {
const target_url = 'https://u.y.qq.com/cgi-bin/musicu.fcg'
// thanks to https://github.com/Rain120/qq-music-api/blob/2b9cb811934888a532545fbd0bf4e4ab2aea5dbe/routers/context/getMusicPlay.js
const guid = '10000'
const songmidList = [songInfo.songmid]
const uin = '0'
const fileInfo = fileConfig[type]
const file =
songmidList.length === 1 &&
`${fileInfo.s}${songInfo.songmid}${songInfo.songmid}${fileInfo.e}`
const reqData = {
req_0: {
module: 'vkey.GetVkeyServer',
method: 'CgiGetVkey',
param: {
filename: file ? [file] : [],
guid,
songmid: songmidList,
songtype: [0],
uin,
loginflag: 1,
platform: '20',
},
},
loginUin: uin,
comm: {
uin,
format: 'json',
ct: 24,
cv: 0,
},
}
const requestObj = httpFetch(`${target_url}?format=json&data=${JSON.stringify(reqData)}`, {
method: 'get',
timeout,
})
requestObj.promise = requestObj.promise.then(({ body }) => {
// console.log(body)
const { purl } = body.req_0.data.midurlinfo[0]
// vip
if (purl === '') return Promise.reject(new Error('failed'))
const url = body.req_0.data.sip[0] + purl
return { type, url }
})
return requestObj
},
}

View File

@ -1,46 +0,0 @@
import { httpFetch } from '../../request'
import { timeout } from '../options'
import { eapi } from './utils/crypto'
// https://github.com/listen1/listen1_chrome_extension/blob/master/js/provider/netease.js
const qualitys = {
'128k': 128000,
'320k': 320000,
flac: 999000,
}
let cookie = 'os=pc'
export default {
getMusicUrl(songInfo, type) {
const quality = qualitys[type]
const target_url = 'https://interface3.music.163.com/eapi/song/enhance/player/url'
const eapiUrl = '/api/song/enhance/player/url'
const d = {
ids: `[${songInfo.songmid}]`,
br: quality,
}
const data = eapi(eapiUrl, d)
const requestObj = httpFetch(target_url, {
method: 'POST',
timeout,
form: data,
headers: {
cookie,
},
})
requestObj.promise = requestObj.promise.then(({ headers, body }) => {
// console.log(body)
if (headers.cookie) cookie = headers.cookie
const { url } = body.data[0]
if (!url) return Promise.reject(new Error('failed'))
return { type, url }
})
return requestObj
},
}