百度音乐全接口 会利用使用接口找歌简单又快捷
http://tingapi.ting.baidu.com/v1/restserver/ting
获取方式:GET
参数:format=json或xml&calback=&from=webapp_music&method=以下不同的参数获得不同的数据
PS:format根据开发需要可选择json或xmml,其他参数对应填入,calback是等于空的。
一、获取列表
例:method=baidu.ting.billboard.billList&type=1&size=10&offset=0
参数: type = 1-新歌榜,2-热歌榜,11-摇滚榜,12-爵士,16-流行,21-欧美金曲榜,22-经典老歌榜,23-情歌对唱榜,24-影视金曲榜,25-网络歌曲榜
size = 10 //返回条目数量
offset = 0 //获取偏移
二、貌似是推广(无用)
例:method=baidu.ting.adv.showlist&_=1430215999
参数:_ = 1430215999//时间戳
三、搜索
例:method=baidu.ting.search.catalogSug&query=海阔天空
参数:query = '' //搜索关键字
四、播放
例:method=baidu.ting.song.play&songid=877578
例:method=baidu.ting.song.playAAC&songid=877578
参数:songid = 877578 //歌曲id
五、LRC歌词
例:method=baidu.ting.song.lry&songid=877578
参数:songid = 877578 //歌曲id
六、推荐列表
例:method=baidu.ting.song.getRecommandSongList&song_id=877578&num=5
参数: song_id = 877578
num = 5//返回条目数量
七、下载
例:method=baidu.ting.song.downWeb&songid=877578&bit=24&_t=1393123213
参数: songid = 877578//歌曲id
bit = 24, 64, 128, 192, 256, 320 ,flac//码率
_t = 1430215999,, //时间戳
八、获取歌手信息
例:method=baidu.ting.artist.getInfo&tinguid=877578
参数: tinguid = 877578 //歌手ting id
九、获取歌手歌曲列表
例:method=baidu.ting.artist.getSongList&tinguid=877578&limits=6&use_cluster=1&order=2
参数: tinguid = 877578//歌手ting id
limits = 6//返回条目数量
其他就不用管了
网友评论
Request request = chain.request()
.newBuilder()
.addHeader("User-Agent", makeUA())
.build();
private static String makeUA() {
return Build.BRAND + "/" + Build.MODEL + "/" + Build.VERSION.RELEASE;
}
demo地址:https://my-music.leanapp.cn/
可是在android studio中用okhttp3请求总是
返回结果:: <html>
<head><title>403 Forbidden</title></head>
<body bgcolor="white">
<center><h1>403 Forbidden</h1></center>
<hr><center>nginx</center>
</body>
</html>
这是怎么回事啊
Request request = chain.request()
.newBuilder()
.addHeader("User-Agent", makeUA())
.build();
private static String makeUA() {
return Build.BRAND + "/" + Build.MODEL + "/" + Build.VERSION.RELEASE;
}
<source class="music_sou" src="http://yinyueshiting.baidu.com/data2/music/42783748/42783748.mp3?xcode=062d1cfe164e0f3439ce60c9b3abe9ef" type="audio/mpeg">
不支持
</audio>
<vedio>
<source class="music_sou" src="http://yinyueshiting.baidu.com/data2/music/42783748/42783748.mp3?xcode=062d1cfe164e0f3439ce60c9b3abe9ef" type="audio/mpeg">
</vedio>
结果是
报错403
Forbidden;跨域不行吧
http://yinyueshiting.baidu.com/data2/music/132536199/132536199.mp3?xcode=9931980b10753e84e977ca24e3730051
把这个值放到html的audio或者video标签里面,自行百度这2个标签的用法就行了。
注意:embed播放不了,是下载。
<embed height="100" width="100" src="http://yinyueshiting.baidu.com/data2/music/132536199/132536199.mp3?xcode=571b1e91c787b9b16a37d80a2c02fc5b"></embed>
<p><b>注释:</b>浏览器可能需要安装插件以后,才能播放该文件。</p>
<!DOCTYPE html>
<html>
<body>
<audio src="http://yinyueshiting.baidu.com/data2/music/132536199/132536199.mp3?xcode=571b1e91c787b9b16a37d80a2c02fc5b" controls="controls">
Your browser does not support the audio element.
</audio>
<video src="http://yinyueshiting.baidu.com/data2/music/132536199/132536199.mp3?xcode=571b1e91c787b9b16a37d80a2c02fc5b" controls="controls">
your browser does not support the video tag
</video>
</body>
</html>
```
这样的代码可以播放。
<audio src="http://tingapi.ting.baidu.com/v1/restserver/ting?format=json&from=webapp_music&method=baidu.ting.song.play&songid=14880013" autoplay="autoplay" controls="controls"></audio>
<audio src="http://tingapi.ting.baidu.com/v1/restserver/ting?format=json&from=webapp_music&method=baidu.ting.song.play&songid=14880013" autoplay="true" controls="controls"></audio>
这个授权问题怎么解决?
14.影视金曲 16.流行 18.Hito中文榜 20.华语金曲
21.欧美金曲榜 22.经典老歌 23.情歌对唱 24.影视金曲 25.网络歌曲
这个接口
四、播放
例:method=baidu.ting.song.play&songid=877578
例:method=baidu.ting.song.playAAC&songid=877578
参数:songid = 877578 //歌曲id