Joox音乐(QQ音乐海外版)

Joox音乐搜索

API 文档

  • 接口地址: https://apicx.asia/api/joox_music
  • 返回格式: JOSN
  • 请求方式: GET
  • 请求示例: https://apicx.asia/api/joox_music?msg=孤勇者&n=1

请求参数说明:

名称 必填 类型 说明
token string 登录获取token
msgstringmsg
nintn

返回参数说明:

名称 类型 说明
code integer 返回的状态码
data object 返回的数据/数据对象
msg string 返回的消息
time string 请求时间
data.歌曲名称string歌曲名称
data.歌手string歌手
data.专辑string专辑
data.发行日期string发行日期
data.时长string时长
data.歌曲IDstring歌曲ID
data.songmidstringsongmid
data.歌词状态string歌词状态
data.歌词内容string歌词内容
data.播放链接.母带无损string母带无损
data.播放链接.无损FLACstring无损FLAC
data.播放链接.Hi-Res无损stringHi-Res无损
data.播放链接.Atmos全景声stringAtmos全景声
data.播放链接.OGG 320stringOGG 320
data.播放链接.OGG 192stringOGG 192
data.播放链接.MP3 320stringMP3 320
data.播放链接.MP3 128stringMP3 128
data.播放链接.AAC 192stringAAC 192
data.播放链接.AAC 96stringAAC 96
data.播放链接.AAC 48stringAAC 48

返回示例:

{
  "code": 200,
  "msg": "操作成功!",
  "time": "2026-05-01 21:20:02",
  "api_source": "API官网:apicx.asia",
  "data": {
    "歌曲名称": "孤勇者 (《英雄聯盟:雙城之戰》動畫劇集中文主题曲)",
    "歌手": "陳奕迅",
    "专辑": "孤勇者 (《英雄聯盟:雙城之戰》動畫劇集中文主題曲)",
    "发行日期": "未知",
    "时长": "4:16",
    "歌曲ID": "426931070",
    "songmid": "Z65ac2b7874ebf",
    "歌词状态": "已获取",
    "歌词内容": "[ti:孤勇者]\n[ar:陈奕迅]\n[al:孤勇者]\n[by:p_pttzhang]\n[offset:0]\n[00:00.00]孤勇者 (《英雄联盟:双城之战》动画剧集中文主题曲) - 陈奕迅 (Eason Chan)\n[00:07.43]词:唐恬\n[00:08.22]曲:钱雷\n[00:08.84]编曲:钱雷\n[00:09.55]吉他:高飞\n[00:10.35]人声录音师:利伟明\n[00:11.57]人声录音棚:雅旺录音室\n[00:12.83]Vocal edite:汝文博@SBMS Beijing\n[00:13.07]混音/母带:周天澈@Studio 21A\n[00:14.53]词版权管理方:北京梦织音传媒有限公司\n[00:15.40]曲版权管理方:索尼音乐版权代理(北京)有限公司\n[00:16.67]录音作品及MV版权:EAS MUSIC LTD\n[00:17.02]出品监制:霍锦/卢泓宇\n[00:18.32]联合出品方:拳头游戏/腾讯游戏/腾讯视频\n[00:19.43]制作人:钱雷\n[00:21.02]\n[00:22.16]都是勇敢的\n[00:26.59]\n[00:28.41]你额头的伤口你的不同你犯的错\n[00:34.22]\n[00:36.96]都不必隐藏\n[00:41.70]\n[00:43.41]你破旧的玩偶你的面具你的自我\n[00:48.99]\n[00:51.57]他们说要带着光驯服每一头怪兽\n[00:56.71]\n[00:58.74]他们说要缝好你的伤没有人爱小丑\n[01:04.80]\n[01:05.76]为何孤独不可光荣\n[01:09.11]人只有不完美值得歌颂\n[01:12.61]\n[01:13.35]谁说污泥满身的不算英雄\n[01:18.79]\n[01:20.84]爱你孤身走暗巷\n[01:22.62]爱你不跪的模样\n[01:24.49]爱你对峙过绝望\n[01:26.33]不肯哭一场\n[01:28.23]爱你破烂的衣裳\n[01:29.99]却敢堵命运的枪\n[01:31.86]爱你和我那么像\n[01:33.76]缺口都一样\n[01:35.64]去吗 配吗 这褴褛的披风\n[01:39.39]战吗 战啊 以最卑微的梦\n[01:43.00]致那黑夜中的呜咽与怒吼\n[01:48.98]\n[01:50.24]谁说站在光里的才算英雄\n[01:55.56]\n[02:08.59]他们说要戒了你的狂\n[02:11.57]就像擦掉了污垢\n[02:13.90]\n[02:16.15]他们说要顺台阶而上而代价是低头\n[02:21.43]\n[02:23.45]那就让我不可乘风\n[02:26.52]你一样骄傲着那种孤勇\n[02:30.18]\n[02:30.90]谁说对弈平凡的不算英雄\n[02:37.76]\n[02:38.37]爱你孤身走暗巷\n[02:40.17]爱你不跪的模样\n[02:41.99]爱你对峙过绝望\n[02:43.93]不肯哭一场\n[02:45.75]爱你破烂的衣裳\n[02:47.56]却敢堵命运的枪\n[02:49.39]爱你和我那么像\n[02:51.33]缺口都一样\n[02:53.24]去吗 配吗 这褴褛的披风\n[02:56.83]战吗 战啊 以最卑微的梦\n[03:00.50]致那黑夜中的呜咽与怒吼\n[03:06.58]\n[03:07.84]谁说站在光里的才算英雄\n[03:12.73]你的斑驳与众不同\n[03:18.90]\n[03:19.88]你的沉默震耳欲聋\n[03:25.76]You Are The Hero\n[03:26.55]爱你孤身走暗巷\n[03:28.16]爱你不跪的模样\n[03:29.95]爱你对峙过绝望\n[03:31.83]不肯哭一场 (You Are The Hero)\n[03:33.90]爱你来自于蛮荒\n[03:35.48]一生不借谁的光\n[03:37.32]你将造你的城邦\n[03:39.22]在废墟之上\n[03:41.17]去吗 去啊 以最卑微的梦\n[03:44.78]战吗 战啊 以最孤高的梦\n[03:48.46]致那黑夜中的呜咽与怒吼\n[03:54.72]\n[03:55.82]谁说站在光里的才算英雄",
    "播放链接": {
      "母带无损": "https://hk.stream.music.joox.com/AIM0Z65ac2b7874ebf.flac?uin=605520947&guid=0&vkey=3D018764AA2295CACD3BD39416539956210923DC4B16E556B92B602FFDFCF0E894E792944DFDBAEADBEF5941C72475582A2496FD6AF7730C",
      "无损FLAC": "https://hk.stream.music.joox.com/F000Z65ac2b7874ebf.flac?uin=605520947&guid=0&vkey=10596B4E3DE22967F28FD0C913C07A127037065C0779E57A9A811668F44E929710C4C0103D14A56C66F448F1CA9E8D3D9004B40E732B6CE2",
      "Hi-Res无损": "https://hk.stream.music.joox.com/RS01Z65ac2b7874ebf.flac?uin=605520947&guid=0&vkey=3A9B9109B7C2802AF9261EC447B77AEDCF5C740CD4371789F68FF2F7895CE32A3919D7D2F335AB90495F0B4E2432189C60971CE1C1C64504",
      "Atmos全景声": "https://hk.stream.music.joox.com/Q0M0Z65ac2b7874ebf.flac?uin=605520947&guid=0&vkey=6A442646E8131B9CEDDE9593B9C81476A245337966D16BBF2B42F4C656975C85F88A59886E8C2F497A2255AE94CC6E6F7DAB4FD3F76DF627",
      "OGG 320": "https://hk.stream.music.joox.com/O800Z65ac2b7874ebf.ogg?uin=605520947&guid=0&vkey=5668744FC2643F0429DD53FACAEC09CC8CD680152F9BE65FF42516F81AD61A95BE0BDE920D2AAEA6C1D3AD81F211413C65E75AB4B580ABAB",
      "OGG 192": "https://hk.stream.music.joox.com/O600Z65ac2b7874ebf.ogg?uin=605520947&guid=0&vkey=58573D37DDACCB3B420A830F4504CE0A601F9C9DFF9083D54A4A1077E3FC8CB873339F1E3F8E7A71AD9620431E334CDB52A2FFE18BF256D8",
      "MP3 320": "https://hk.stream.music.joox.com/M800Z65ac2b7874ebf.mp3?uin=605520947&guid=0&vkey=4A0BF92B068682E9C525BC71A6DFB3110ABA0A45BDC28F4A84FFB639A09C2F82661151AAD3EBABDEEADD17021E81CF14DCC8BA178389012F",
      "MP3 128": "https://hk.stream.music.joox.com/M500Z65ac2b7874ebf.mp3?uin=605520947&guid=0&vkey=198C1D3EF286DAFBE58E88C34B85045EDD5E9DA5D7F3E37C7A73D99EA90D6D47AFEFF9F698BB1082E31558FC5736865871D23AC919263C5F",
      "AAC 192": "https://hk.stream.music.joox.com/C600Z65ac2b7874ebf.m4a?uin=605520947&guid=0&vkey=394C41F0B73411B1AF880DA18DBF61A633A4094D47508662099766A308F0C64F6285667AB947D06027CEF8E64EB12C43EF67AFDFCBBC3CED",
      "AAC 96": "https://hk.stream.music.joox.com/C400Z65ac2b7874ebf.m4a?uin=605520947&guid=0&vkey=464585EC530C21D0C4B56089B79A68F0A9E2DFBBBDF9B5F0B6A2755ECC04FA76071809266A1563CAA8CFF61CD4CB2D2BA25AD617C0D2D070",
      "AAC 48": "https://hk.stream.music.joox.com/C200Z65ac2b7874ebf.m4a?uin=605520947&guid=0&vkey=C6525F4E62669A6325DE0E6F3C6B73AC87E4D4FEEDBB086090B6702B78D9EC6109394301D9019DDEC08AE81EE0B33746CCFE3583BE18ADCD"
    }
  },
  "cached_time": "2026-05-01 21:20:02"
}

错误码格式说明:

名称 类型 说明
200 string 返回状态码(成功)
500 string 返回的状态码(失败)

代码示例:


<?php
// 初始化cURL会话
$ch = curl_init();
// 设置请求URL,用户中心获取token,自行替换其他参数
curl_setopt($ch, CURLOPT_URL, "https://apicx.asia/api/joox_music?msg=孤勇者&n=1");
// 设置请求头
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Authorization: YOUR_TOKEN'
));
// 返回响应而不是直接输出
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// 执行请求并获取响应
$response = curl_exec($ch);
// 关闭cURL会话
curl_close($ch);
// 将响应解析为JSON格式
$data = json_decode($response, true);
// 输出JSON数据
print_r($data);
?>
            

import requests

# 设置请求URL和头部,用户中心获取token,自行替换其他参数
url = "https://apicx.asia/api/joox_music?msg=孤勇者&n=1"
headers = {
    'Authorization': 'YOUR_TOKEN'
}

# 发送GET请求
response = requests.get(url, headers=headers)
# 将响应解析为JSON格式
data = response.json()
# 输出JSON数据
print(data)
            

// 发送GET请求,用户中心获取token,自行替换其他参数
fetch("https://apicx.asia/api/joox_music?msg=孤勇者&n=1", {
    method: "GET",
    headers: {
        "Authorization": "YOUR_TOKEN"
    }
})
.then(response => response.json()) // 将响应解析为JSON格式
.then(data => console.log(data)) // 输出JSON数据
.catch(error => console.error('Error:', error));
            

import java.io.*;
import java.net.HttpURLConnection;
import java.net.URL;

public class Main {
    public static void main(String[] args) throws Exception {
        // 创建URL对象,用户中心获取token,自行替换其他参数
        URL url = new URL("https://apicx.asia/api/joox_music?msg=孤勇者&n=1");
        // 打开连接
        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
        // 设置请求方法
        conn.setRequestMethod("GET");
        // 设置请求头
        conn.setRequestProperty("Authorization", "YOUR_TOKEN");

        // 读取响应
        BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
        String inputLine;
        StringBuffer content = new StringBuffer();
        while ((inputLine = in.readLine()) != null) {
            content.append(inputLine);
        }
        in.close();
        // 输出JSON数据
        System.out.println(content.toString());
    }
}
            

using System;
using System.Net.Http;
using System.Threading.Tasks;

class Program {
    static async Task Main() {
        using (HttpClient client = new HttpClient()) {
            // 设置请求头
            client.DefaultRequestHeaders.Add("Authorization", "YOUR_TOKEN");
            // 发送GET请求,用户中心获取token,自行替换其他参数
            HttpResponseMessage response = await client.GetAsync("https://apicx.asia/api/joox_music?msg=孤勇者&n=1");
            // 将响应解析为字符串
            string responseBody = await response.Content.ReadAsStringAsync();
            // 输出JSON数据
            Console.WriteLine(responseBody);
        }
    }
}
            

require 'net/http'
require 'uri'

# 创建URI对象,用户中心获取token,自行替换其他参数
uri = URI.parse("https://apicx.asia/api/joox_music?msg=孤勇者&n=1")
# 创建GET请求
request = Net::HTTP::Get.new(uri)
# 设置请求头
request["Authorization"] = "YOUR_TOKEN"

# 发送请求并获取响应
response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == "https") do |http|
  http.request(request)
end

# 输出JSON数据
puts response.body
            

package main

import (
    "fmt"
    "io/ioutil"
    "net/http"
)

func main() {
    client := &http.Client{}
    // 创建GET请求,用户中心获取token,自行替换其他参数
    req, err := http.NewRequest("GET", "https://apicx.asia/api/joox_music?msg=孤勇者&n=1", nil)
    if err != nil {
        panic(err)
    }
    // 设置请求头
    req.Header.Add("Authorization", "YOUR_TOKEN")

    // 发送请求并获取响应
    resp, err := client.Do(req)
    if err != nil {
        panic(err)
    }
    defer resp.Body.Close()

    // 读取响应体
    body, err := ioutil.ReadAll(resp.Body)
    if err != nil {
        panic(err)
    }
    // 输出JSON数据
    fmt.Println(string(body))
}