聚合音乐搜索
聚合QQ、网易、酷狗、酷我、波点、咪咕音乐平台的音乐搜索
| 参数名 | 必填 | 类型 | 默认 | 可选 | 说明 |
|---|---|---|---|---|---|
| token | 是 | string | 无 | 登录后显示你的请求token | 接口请求唯一认证标识! |
| mode | 否 | string | json | json、text、audio | 返回类型 |
| type | 否 | string | all(随机) | all(随机)、qq(QQ音乐)、wy(网易云音乐)、bd(波点音乐)、kg(酷狗音乐)、kw(酷我音乐)、mg(咪咕音乐) | 音乐平台 |
| name | 是 | string | 无 | 无 | 歌曲名称 |
| n | 是 | string | 无 | 无 | 歌曲详情 留空时获取音乐列表 |
| 参数名 | 类型 | 说明 |
|---|---|---|
| code | int | 返回状态码 |
| song_type | string | 音乐平台 |
| song_name | string | 歌曲名称 |
| song_singer | string | 歌曲作者 |
| song_quality | string | 歌曲音质 |
| song_cover | string | 歌曲封面 |
| song_link | string | 歌曲官方地址 |
| song_musicurl | string | 歌曲直连 |
| song_lyric | array | 歌曲歌词(支持QQ音乐、网易云音乐、酷狗音乐获取歌词) |
| song_lyrictext | string | 歌曲歌词,文本版(支持QQ音乐、网易云音乐、酷狗音乐获取歌词) |
【JSON】格式预览
{
"code": 200,
"data": {
"song_type": "QQ音乐",
"song_name": "告白气球",
"song_singer": "周杰伦",
"song_quality": "SQ无损",
"song_cover": "https://y.qq.com/music/photo_new/T002R800x800M000003RMaRI1iFoYd_1.jpg?max_age=2963246343",
"song_link": "https://i.y.qq.com/v8/playsong.html?songmid=003OUlho2HcRHC&type=0",
"song_musicurl": "https://isure.stream.qqmusic.qq.com/F000003gbY6c0g1L4Q.flac?guid=6610141264&vkey=8AC2E9EBE66F6E37460FCB02B26FD8728CC2FCAA70206C4AED01D3147518D63EA78C8193DB4DAD55175887197834367E2EF3058924B1A85B__v2ba8209e&uin=2388721329&src=F000002QE4Dt4Gkrgd.flac&info=cache",
"song_lyric": [
"[ti:告白气球]",
"[ar:周杰伦]",
"[al:周杰伦的床边故事]",
"[by:]",
"[offset:0]",
"[00:00.00]告白气球 - 周杰伦 (Jay Chou)",
"[00:05.89]词:方文山",
"[00:11.79]曲:周杰伦",
"[00:17.69]编曲:林迈可",
"[00:23.59]塞纳河畔 左岸的咖啡",
"[00:26.16]我手一杯 品尝你的美",
"[00:28.78]",
"[00:29.33]留下唇印的嘴",
"[00:31.83]",
"[00:34.27]花店玫瑰 名字写错谁",
"[00:36.90]告白气球 风吹到对街",
"[00:39.29]",
"[00:40.01]微笑在天上飞",
"[00:42.10]",
"[00:44.01]你说你有点难追",
"[00:46.57]想让我知难而退",
"[00:49.22]礼物不需挑最贵",
"[00:51.89]只要香榭的落叶",
"[00:54.56]喔 营造浪漫的约会",
"[00:57.26]不害怕搞砸一切",
"[00:59.93]拥有你就拥有全世界",
"[01:04.10]",
"[01:05.01]亲爱的 爱上你",
"[01:08.17]从那天起",
"[01:10.61]",
"[01:11.33]甜蜜的很轻易",
"[01:14.43]",
"[01:15.69]亲爱的 别任性",
"[01:18.85]你的眼睛",
"[01:21.24]",
"[01:21.94]在说我愿意",
"[01:25.23]",
"[01:48.90]塞纳河畔 左岸的咖啡",
"[01:51.46]我手一杯 品尝你的美",
"[01:54.43]留下唇印的嘴",
"[01:56.63]",
"[01:59.56]花店玫瑰 名字写错谁",
"[02:02.14]告白气球 风吹到对街",
"[02:04.37]",
"[02:05.23]微笑在天上飞",
"[02:07.49]",
"[02:09.29]你说你有点难追",
"[02:11.90]想让我知难而退",
"[02:14.60]礼物不需挑最贵",
"[02:17.26]只要香榭的落叶",
"[02:19.93]喔 营造浪漫的约会",
"[02:22.65]不害怕搞砸一切",
"[02:25.27]拥有你就拥有 全世界",
"[02:29.23]",
"[02:30.31]亲爱的 爱上你",
"[02:33.58]从那天起",
"[02:36.03]",
"[02:36.60]甜蜜的很轻易",
"[02:39.65]",
"[02:40.94]亲爱的 别任性",
"[02:44.20]你的眼睛",
"[02:46.70]",
"[02:47.26]在说我愿意",
"[02:50.81]",
"[02:51.76]亲爱的 爱上你",
"[02:54.52]",
"[02:55.05]恋爱日记",
"[02:57.30]",
"[02:57.93]飘香水的回忆",
"[03:00.72]",
"[03:02.33]一整瓶 的梦境",
"[03:05.42]全都有你",
"[03:07.91]",
"[03:08.64]搅拌在一起",
"[03:11.39]",
"[03:13.02]亲爱的别任性",
"[03:16.23]你的眼睛",
"[03:19.99]",
"[03:21.31]在说我愿意"
],
"song_lyrictext": "[ti:告白气球]\n[ar:周杰伦]\n[al:周杰伦的床边故事]\n[by:]\n[offset:0]\n[00:00.00]告白气球 - 周杰伦 (Jay Chou)\n[00:05.89]词:方文山\n[00:11.79]曲:周杰伦\n[00:17.69]编曲:林迈可\n[00:23.59]塞纳河畔 左岸的咖啡\n[00:26.16]我手一杯 品尝你的美\n[00:28.78]\n[00:29.33]留下唇印的嘴\n[00:31.83]\n[00:34.27]花店玫瑰 名字写错谁\n[00:36.90]告白气球 风吹到对街\n[00:39.29]\n[00:40.01]微笑在天上飞\n[00:42.10]\n[00:44.01]你说你有点难追\n[00:46.57]想让我知难而退\n[00:49.22]礼物不需挑最贵\n[00:51.89]只要香榭的落叶\n[00:54.56]喔 营造浪漫的约会\n[00:57.26]不害怕搞砸一切\n[00:59.93]拥有你就拥有全世界\n[01:04.10]\n[01:05.01]亲爱的 爱上你\n[01:08.17]从那天起\n[01:10.61]\n[01:11.33]甜蜜的很轻易\n[01:14.43]\n[01:15.69]亲爱的 别任性\n[01:18.85]你的眼睛\n[01:21.24]\n[01:21.94]在说我愿意\n[01:25.23]\n[01:48.90]塞纳河畔 左岸的咖啡\n[01:51.46]我手一杯 品尝你的美\n[01:54.43]留下唇印的嘴\n[01:56.63]\n[01:59.56]花店玫瑰 名字写错谁\n[02:02.14]告白气球 风吹到对街\n[02:04.37]\n[02:05.23]微笑在天上飞\n[02:07.49]\n[02:09.29]你说你有点难追\n[02:11.90]想让我知难而退\n[02:14.60]礼物不需挑最贵\n[02:17.26]只要香榭的落叶\n[02:19.93]喔 营造浪漫的约会\n[02:22.65]不害怕搞砸一切\n[02:25.27]拥有你就拥有 全世界\n[02:29.23]\n[02:30.31]亲爱的 爱上你\n[02:33.58]从那天起\n[02:36.03]\n[02:36.60]甜蜜的很轻易\n[02:39.65]\n[02:40.94]亲爱的 别任性\n[02:44.20]你的眼睛\n[02:46.70]\n[02:47.26]在说我愿意\n[02:50.81]\n[02:51.76]亲爱的 爱上你\n[02:54.52]\n[02:55.05]恋爱日记\n[02:57.30]\n[02:57.93]飘香水的回忆\n[03:00.72]\n[03:02.33]一整瓶 的梦境\n[03:05.42]全都有你\n[03:07.91]\n[03:08.64]搅拌在一起\n[03:11.39]\n[03:13.02]亲爱的别任性\n[03:16.23]你的眼睛\n[03:19.99]\n[03:21.31]在说我愿意"
},
"msg": "请求成功",
"time": "2025-09-22 01:20:56",
"ip": "110.42.48.75"
}
【文本】格式预览
平台:QQ音乐
名称:告白气球
歌手:周杰伦
质量:SQ无损
封面:https://y.qq.com/music/photo_new/T002R800x800M000003RMaRI1iFoYd_1.jpg?max_age=2963246343
链接:https://i.y.qq.com/v8/playsong.html?songmid=003OUlho2HcRHC&type=0
直连:https://isure.stream.qqmusic.qq.com/F000003gbY6c0g1L4Q.flac?guid=6610141264&vkey=8AC2E9EBE66F6E37460FCB02B26FD8728CC2FCAA70206C4AED01D3147518D63EA78C8193DB4DAD55175887197834367E2EF3058924B1A85B__v2ba8209e&uin=2388721329&src=F000002QE4Dt4Gkrgd.flac&info=cache
歌词:
------------------
[ti:告白气球]
[ar:周杰伦]
[al:周杰伦的床边故事]
[by:]
[offset:0]
[00:00.00]告白气球 - 周杰伦 (Jay Chou)
[00:05.89]词:方文山
[00:11.79]曲:周杰伦
[00:17.69]编曲:林迈可
[00:23.59]塞纳河畔 左岸的咖啡
[00:26.16]我手一杯 品尝你的美
[00:28.78]
[00:29.33]留下唇印的嘴
[00:31.83]
[00:34.27]花店玫瑰 名字写错谁
[00:36.90]告白气球 风吹到对街
[00:39.29]
[00:40.01]微笑在天上飞
[00:42.10]
[00:44.01]你说你有点难追
[00:46.57]想让我知难而退
[00:49.22]礼物不需挑最贵
[00:51.89]只要香榭的落叶
[00:54.56]喔 营造浪漫的约会
[00:57.26]不害怕搞砸一切
[00:59.93]拥有你就拥有全世界
[01:04.10]
[01:05.01]亲爱的 爱上你
[01:08.17]从那天起
[01:10.61]
[01:11.33]甜蜜的很轻易
[01:14.43]
[01:15.69]亲爱的 别任性
[01:18.85]你的眼睛
[01:21.24]
[01:21.94]在说我愿意
[01:25.23]
[01:48.90]塞纳河畔 左岸的咖啡
[01:51.46]我手一杯 品尝你的美
[01:54.43]留下唇印的嘴
[01:56.63]
[01:59.56]花店玫瑰 名字写错谁
[02:02.14]告白气球 风吹到对街
[02:04.37]
[02:05.23]微笑在天上飞
[02:07.49]
[02:09.29]你说你有点难追
[02:11.90]想让我知难而退
[02:14.60]礼物不需挑最贵
[02:17.26]只要香榭的落叶
[02:19.93]喔 营造浪漫的约会
[02:22.65]不害怕搞砸一切
[02:25.27]拥有你就拥有 全世界
[02:29.23]
[02:30.31]亲爱的 爱上你
[02:33.58]从那天起
[02:36.03]
[02:36.60]甜蜜的很轻易
[02:39.65]
[02:40.94]亲爱的 别任性
[02:44.20]你的眼睛
[02:46.70]
[02:47.26]在说我愿意
[02:50.81]
[02:51.76]亲爱的 爱上你
[02:54.52]
[02:55.05]恋爱日记
[02:57.30]
[02:57.93]飘香水的回忆
[03:00.72]
[03:02.33]一整瓶 的梦境
[03:05.42]全都有你
[03:07.91]
[03:08.64]搅拌在一起
[03:11.39]
[03:13.02]亲爱的别任性
[03:16.23]你的眼睛
[03:19.99]
[03:21.31]在说我愿意
【图像】格式预览
【音频】格式预览
【视频】格式预览
| code | 说明 |
|---|---|
| 200 | 请求成功 |
| 351 | 请输入歌曲名称 |
| 352 | 搜索音乐失败 |
| code | 说明 |
|---|---|
| 500 | 服务器错误 |
| 501 | 请求接口不存在 |
| 502 | 请求接口已下架 |
| 503 | 请求接口维护中 |
| 504 | 缺少请求token参数 |
| 505 | 请求token不存在 |
| 506 | 请求token已被封禁 |
| 507 | 请求token额度不足 |
| 508 | 今日请求token已达上限 |
| 509 | 请求ip不在token白名单内 |
| 510 | 请求token无权使用当前接口 |
| 511 | 接口请求频率超限 |
| 参数名 | 参数值 |
|---|
【PHP】示例代码dome
/**
* API请求DEMO-PHP
*
* 本demo支持GET与POST请求。
*/
//你申请的token密钥
$API_TOKEN = '你账号的请求token密钥,可前往个人中心查看';
//API接口地址
$API_URL = 'https://api.yunmge.com/api/music';
$get_post_data = array(
//接口参数,一行一个,可按照API文档-请求参数的参数填写,其中token为必填参数。
'token' => $API_TOKEN,
'参数名' => '参数值',
);
/*发起请求API接口:
第1个参数:API接口地址URL,跟上面的同名变量相对应,无需更改。
第2个参数:API接口参数数组,跟上面的同名变量相对应,无需更改。
第3个参数:请求协议(GET或POST),一般默认GET,部分接口需要POST请求,根据实际情况修改为POST即可。
*/
$resdata = api::send($API_URL, $get_post_data, 'GET'); //发起请求,注意这里要选择接口支持的协议,默认GET,可选POST
//打印请求结果
print($resdata);
///////////////你的业务代码可写在这里处理API返回的数据
/**
* API请求类
*/
class api
{
public static function send($API_URL, $get_post_data, $type)
{
$get_post_data = http_build_query($get_post_data);
$res = self::send_curl($API_URL, $type, $get_post_data, null);
return $res;
}
//封装好的CURL请求函数,支持POST|GET
public static function send_curl($API_URL, $type, $get_post_data)
{
$ch = curl_init();
if ($type == 'POST') {
curl_setopt($ch, CURLOPT_URL, $API_URL);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $get_post_data);
} elseif ($type == 'GET') {
curl_setopt($ch, CURLOPT_URL, $API_URL . '?' . $get_post_data);
}
curl_setopt($ch, CURLOPT_REFERER, $API_URL);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
$resdata = curl_exec($ch);
curl_close($ch);
return $resdata;
}
}
【JavaScript】示例代码dome
/**
* API请求DEMO-JavaScript
*
* 本demo支持GET与POST请求。
*/
//jQuery-Ajax
$.ajax({
url: 'https://api.yunmge.com/api/music',
data: {
//接口参数,一行一个,可按照API文档-请求参数的参数填写,其中token为必填参数。
token: '你账号的请求token密钥,可前往个人中心查看',
参数名: '参数值',
},
type: 'GET', //请求协议(GET或POST),一般默认GET,部分接口需要POST请求,根据实际情况修改为POST即可。
dataType: 'json',
success: function(data) {
console.log(data); //请求成功,输出结果到控制台
},
timeout: 3000, //超时时间
error: function(data) {
console.log('请求失败'); //失败处理
}
});
【NodeJs】示例代码dome
/**
* API请求DEMO-NodeJs
*
* 本demo支持GET与POST请求。
*/
const https = require('https');
const querystring = require('querystring');
// 定义请求选项
const options = {
hostname: 'https://api.yunmge.com/',
path: 'api/music',
method: 'GET'
};
// 发送GET请求
https.get(options, res => {
console.log(`statusCode: ${res.statusCode}`);
res.on('data', d => {
process.stdout.write(d);
});
}).on('error', error => {
console.error(error);
});
// 发送POST请求
const postData = querystring.stringify({
//接口参数,一行一个,可按照API文档-请求参数的参数填写,其中token为必填参数。
'token': '你账号的请求token密钥,可前往个人中心查看',
'参数名': '参数值'
});
const postOptions = {
hostname: 'https://api.yunmge.com/',
path: 'api/music',
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
'Content-Length': Buffer.byteLength(postData)
}
};
const postReq = https.request(postOptions, res => {
console.log(`statusCode: ${res.statusCode}`);
res.on('data', d => {
process.stdout.write(d);
});
});
postReq.on('error', error => {
console.error(error);
});
postReq.write(postData);
postReq.end();
/*
这个示例代码使用Node.js内置的`https`模块进行HTTP请求。
首先定义了一个GET请求的选项,然后使用`https.get()`方法发送了GET请求。在响应流上注册回调函数,以便在收到响应数据时将其输出到控制台。在出现错误时,也注册了错误处理程序。
类似地,我们也定义了一个POST请求选项,并使用`https.request()`方法发送它。需要在请求头中包含适当的`Content-Type`和`Content-Length`以确保服务器可以正确解析请求体。请求体由`write()`方法写入,并在请求结束时通过调用`end()`方法通知请求对象已经完成。
注意,此示例默认使用`querystring`模块将数据作为x-www-form-urlencoded格式进行编码。如果需要使用其他格式(如JSON),则需要相应地更改请求头和请求体的编码方式。
另外,为了确保HTTPS请求的安全性,您也可以添加其他选项,例如验证服务器证书、设置代理等。
*/
【C】示例代码dome
/**
* API请求DEMO-C
*
* 本demo支持GET与POST请求。
*/
```
#include
#include
#include
#include // 需要安装curl库
// API地址
const char* url = "https://api.yunmge.com/";
// GET请求
void getRequest(CURL* curl) {
CURLcode res;
// 设置URL
curl_easy_setopt(curl, CURLOPT_URL, url);
// 执行请求
res = curl_easy_perform(curl);
if(res != CURLE_OK) {
fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res));
}
}
// POST请求
void postRequest(CURL* curl) {
CURLcode res;
// 设置URL
curl_easy_setopt(curl, CURLOPT_URL, url);
// 设置POST数据
const char* postData = "token=你账号的请求token密钥,可前往个人中心查看&参数名=参数值";
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, postData);
// 执行请求
res = curl_easy_perform(curl);
if(res != CURLE_OK) {
fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res));
}
}
int main() {
CURL* curl;
CURLcode res;
// 初始化curl
curl = curl_easy_init();
if(curl) {
// 设置SSL验证
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 1L);
// GET请求
getRequest(curl);
// POST请求
postRequest(curl);
// 清理curl资源
curl_easy_cleanup(curl);
}
return 0;
}
```
这个示例代码使用了libcurl库进行HTTP请求。
首先,需要设置API地址。然后,基于`CURL`结构体创建curl句柄,并使用`curl_easy_setopt()`函数设置选项。这里设置了SSL验证,以确保请求的安全性。
在GET请求中,只需将URL设置为选项,然后调用`curl_easy_perform()`函数执行请求即可。
在POST请求中,还需要将POST数据作为字符串传递给`CURLOPT_POSTFIELDS`选项。
需要注意的是,为了避免内存泄漏,应该在使用完curl句柄之后调用`curl_easy_cleanup()`函数进行清理。
除了上述示例代码外,libcurl库还提供了更多高级选项,例如处理HTTP头、上传文件等。可以参考文档进行更详细的了解。
【C++】示例代码dome
/**
* API请求DEMO-C++
*
* 本demo支持GET请求。
*/
```
#include
#include
int main() {
CURL *curl;
CURLcode res;
std::string url = "https://api.yunmge.com/api/music?token=你账号的请求token密钥,可前往个人中心查看";
std::string response;
curl = curl_easy_init();
if (curl) {
curl_easy_setopt(curl, CURLOPT_URL, url.c_str());
curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, [](char *ptr, size_t size, size_t nmemb, void *userdata) -> size_t {
std::string *response = reinterpret_cast(userdata);
response->append(ptr, size * nmemb);
return size * nmemb;
});
curl_easy_setopt(curl, CURLOPT_WRITEDATA, &response);
res = curl_easy_perform(curl);
if (res == CURLE_OK) {
std::cout << "Response: " << response << std::endl;
} else {
std::cerr << "Error: " << curl_easy_strerror(res) << std::endl;
}
curl_easy_cleanup(curl);
}
return 0;
}
```
解释:
1. 引入需要的头文件:``用于输出结果,``用于使用libcurl库。
2. 定义需要请求的API接口的URL和存储响应数据的字符串变量。
3. 初始化一个CURL对象。
4. 设置CURL对象的参数:请求的URL(`CURLOPT_URL`)、是否跟随重定向(`CURLOPT_FOLLOWLOCATION`)、响应数据的写入函数(`CURLOPT_WRITEFUNCTION`)和响应数据的写入位置(`CURLOPT_WRITEDATA`)。
5. 发送HTTP请求并获取响应数据,判断返回状态码是否OK。
6. 清理CURL对象。
运行该程序会发送GET请求到指定的API接口URL,并在程序终止前将响应数据输出到终端。注意,在使用该示例代码之前需要安装libcurl库。
【C#】示例代码dome
/**
* API请求DEMO-C#
*
* 本demo支持GET请求。
*/
```
using System;
using System.Net.Http;
using System.Threading.Tasks;
class Program {
static async Task Main(string[] args) {
HttpClient client = new HttpClient();
string url = "https://api.yunmge.com/api/music?token=你账号的请求token密钥,可前往个人中心查看";
HttpResponseMessage response = await client.GetAsync(url);
if (response.IsSuccessStatusCode) {
string responseBody = await response.Content.ReadAsStringAsync();
Console.WriteLine("Response: " + responseBody);
} else {
Console.WriteLine("Error: " + response.StatusCode);
}
}
}
```
解释:
1. 引用需要的命名空间:`System.Net.Http`用于使用HttpClient类,`System.Threading.Tasks`用于异步执行请求操作。
2. 创建一个HttpClient对象。
3. 定义需要请求的API接口的URL。
4. 发送GET请求到指定的API接口URL,并获取响应结果。
5. 判断响应状态是否成功,如果成功则读取响应数据(使用ReadAsStringAsync方法),否则输出错误信息(使用StatusCode属性)。
运行该程序会发送GET请求到指定的API接口URL,并在程序终止前将响应数据输出到终端。注意,在使用该示例代码之前需要安装.NET Framework或.NET Core SDK。
【JAVA】示例代码dome
/**
* API请求DEMO-JAVA
*
* 本demo支持GET请求。
*/
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
public class Test {
public static void main(String[] args) {
try {
URL url = new URL("https://api.yunmge.com/api/music?token=你账号的请求token密钥,可前往个人中心查看");
HttpURLConnection connection = (HttpURLConnection)url.openConnection();
// 设置请求方式
connection.setRequestMethod("GET");
connection.connect();
// 获取响应码
int responseCode = connection.getResponseCode();
if (responseCode == HttpURLConnection.HTTP_OK) {
BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String line;
while ((line = reader.readLine()) != null) {
// 读取到的内容给line变量
System.out.println(line);
}
reader.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
【GO】示例代码dome
/**
* API请求DEMO-GO
*
* 本demo支持GET请求。
*/
package main
import (
"fmt"
"io/ioutil"
"net/http"
)
func main() {
// 发起一个GET请求
resp, err := http.Get("https://api.yunmge.com/api/music?token=你账号的请求token密钥,可前往个人中心查看")
if err != nil {
fmt.Println("http get error", err)
return
}
// 读取响应结果
result, err := ioutil.ReadAll(resp.Body)
if err != nil {
fmt.Println("http read error", err)
return
}
// 关闭响应结果
defer resp.Body.Close()
fmt.Println(string(result))
}
【Python】示例代码dome
# API请求DEMO-Python
#
# 本demo支持POST请求。
```
# 导入requests库
import requests
# 设置url
url = 'https://api.yunmge.com/api/music'
# 发送post请求
response = requests.post(url, data={
#接口参数,一行一个,可按照API文档-请求参数的参数填写,其中token为必填参数。
'token': '你账号的请求token密钥,可前往个人中心查看',
'参数名': '参数值'
})
# 获取响应内容
result = response.json()
# 打印结果
print(result)
```
【易语言】示例代码dome
/**
* API请求DEMO-易语言
*
* 本demo支持GET请求。
*/
.版本 2
.子程序 __启动窗口_创建完毕
'添加并使用《精易模块》
Send_API ()
.子程序 Send_API
.局部变量 REQU_Data, 文本型, , , 提交字符串
.局部变量 return, 文本型, , , 返回字符串
.局部变量 API_URL, 文本型, , , 接口地址
.局部变量 API_TOKEN, 文本型, , , 接口密钥
API_URL = “https://api.yunmge.com/api/music”
API_TOKEN = “你账号的请求token密钥,可前往个人中心查看”
REQU_Data = "请求参数,根据接口文档的请求参数来拼接字符串(例a=a&b=b&c=c)"
return = 编码_Utf8到Ansi (网页_访问 (API_URL + “token=” + API_TOKEN + REQU_Data, , , , , “User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36”))
输出调试文本 (return)