VLC API发HTTP请求排序播放列表报invalid search key错误求助
问题原因
触发invalid search key错误的核心原因是调用VLC播放列表排序接口时,传入的排序键不符合接口要求:VLC的HTTP接口不接受字符串格式的排序字段名,仅支持预定义的整数型枚举值,此外参数缺失、传参位置错误也会触发同类报错。
解决方案
按以下要求修正请求即可:
1. 使用合法的整数型排序键
sort参数仅支持以下固定值,禁止传title/duration这类字符串:
0:按播放列表内ID排序1:按媒体标题排序2:按艺术家名称排序3:按音乐流派排序4:随机排序5:按媒体时长排序6:按媒体文件路径排序
2. 补全必填参数
排序接口必须同时携带3个参数,缺一个都会报错:
id:目标播放列表的节点ID,操作根播放列表固定传-1,操作子播放列表传对应节点的数字IDsort:上面列出的整数排序键order:排序方向,1为升序,0为降序
3. 用正确的请求方式传参
必须使用GET请求,所有参数拼接在URL后,不要放在POST请求体中,否则VLC无法解析到参数。
正确请求示例
按标题升序排序根播放列表的请求格式如下:
http://<你的VLC服务地址>:<端口号,默认8080>/requests/playlist.json?command=pl_sort&id=-1&sort=1&order=1
注意:请求需要携带VLC HTTP服务的Basic认证信息,否则会返回401未授权错误。
常见错误触发场景
- 把
sort参数传为字符串类型的字段名,比如sort=title - 漏传
order参数 - 用POST方式提交参数,参数放在请求体中
id参数传入了不存在的播放列表节点ID
内容的提问来源于stack exchange,提问作者gsharew
相关产品推荐
相关产品推荐

