nodejs 测试音源api使用的测试代码

回复
rxxx
网站管理员
帖子: 44
注册时间: 2025年 11月 4日 11:57 星期二

nodejs 测试音源api使用的测试代码

帖子 rxxx »

nodejs 测试音源api使用的测试代码

代码: 全选

const axios_1 = require("axios");
//QQ是songmid,其他的是id
const quality = '320k';
const musicItem = {'songmid':'001ufyHx10iWpg'};
//const musicItem = {'songmid':'0016O7hh1h111I'};
//const musicItem = {'id':'1888381008'};
//QQ是songmid,其他的是id
//${musicItem.songmid}
//${musicItem.id}
//${songName}
//${res1.data[n]['n']}
/*
    low: "128k",
    standard: "320k",
    high: "320k",
    super: "320k",
*/

//
//
//===将下面代码复制到API中替换====
//下面是自己重新添加的几个api,需要添加的话重新写一个API funtion 再在下面的if中添加进去
const qq_apis = [qq_sayqz_com];
//,qq_jkyai_top_2,qq_aa_cab,qq_vkeys_cn,qq_ioapi_net,qq_cyapi_top,qq_hhlqilongzhu_cn,qq_jkyai_top_1,qq_suol_cc,qq_haitangw_cc_2,qq_haitangw_net_2
//qq_haitangw_cc_1,qq_haitangw_net_1,,qq_suol_cc
//ID查找:
//歌名查找:
//高音质:qq_suol_cc,
//低音质:
async function getMediaSource(musicItem, quality) {
    console.log("getMediaSource begin:");
    for(let n =0; n < qq_apis.length; n++){
        try{
            console.log(`正在尝试 ${qq_apis[n].name}...`);
            const musicUrl = await qq_apis[n](musicItem, quality);
            
            if(musicUrl && musicUrl != ''){
                console.log(`musicUrl ${qq_apis[n].name}: `,musicUrl);
                return {url: musicUrl,};
            }
            continue;
        }catch(err){
            console.log(`getMediaSource 中 try ${qq_apis[n].name} 时: err`);
        }
    }
    console.log("------all Api run done,No get musicUrl!-------");
    return {url: '',};
}


//https://cyapi.top/API/qq_music.php?apikey=91e63738da307425376ebd19a6cc64f8acc69300ba3dc4aa82b5d0ab2eab2fe3&type=json&mid=001ufyHx10iWpg
async function qq_cyapi_top(musicItem, quality) {
    //return '';
    try{
        const res = (
            await axios_1.default.get(`https://cyapi.top/API/qq_music.php?apikey=91e63738da307425376ebd19a6cc64f8acc69300ba3dc4aa82b5d0ab2eab2fe3&type=json&mid=${musicItem.songmid}`, {
                headers: {
                    "X-Request-Key": "share-v2"
                },
            })
        ).data;
        //console.log('res = :', res);
        const mUrl = res.url
        if (mUrl == undefined){return '';}
        return mUrl;
    }catch(err){
        console.log(`${qq_cyapi_top.name} err!`);
        return '';
    }
}

/////其他 api 代码部分/////////////////////////////////////////////

//上面是自己添加的
//===将上面代码复制到API中替换====
/*
中间的注释掉了
*/
//
//
// 示例调用
(async () => {
  const redirectUrl = await getMediaSource(musicItem, quality);
  console.log("最终的重定向 URL:", redirectUrl);
})();
回复