微信 在线听歌 在线点歌 在线点播音乐API 公众平台微信公众平台消息接口 微信开发模式
微信公众平台在年前开放了新的消息接口-音乐消息,这是广大微信公众平台开发者的福音。
根据这一功能,如果能做出在微信中点歌功能,那么我们以后就可以不用安装其他APP,
直接在微信里面关注一个账号,就可以听歌了,还省去了安装的麻烦,而且不用再占用空间。如果音乐资源足够好,那将秒杀一切手机上在线听歌软件也不是没有可能的。
一、获取音乐资源
调用方法:
/search/music/?appkey=000430&appsecert=fa6095e1133d28ad&reqtype=music&keyword=歌曲名称
返回格式:与微信音乐格式类似,json型:
{"errcode": 0,"msgtype": "music","music": {"title": "歌曲名称","description": "music","musicurl": "音乐地址","hqmusicurl": "音乐地址"}}
失败时返回文本信息
{"errcode": "1","msgtype": "text","text": {"content": "检索音乐失败!"}}
二、封装音乐消息
获取该音乐消息的代码如下:
public string GetMusic(string MusicName){WebClient MyWebClient = new WebClient();MyWebClient.Credentials = CredentialCache.DefaultCredentials;//获取或设置用于对向Internet资源的请求进行身份验证的网络凭据。Byte[] Comp = MyWebClient.DownloadData("/search/music/?appkey=000430&appsecert=fa6095e1133d28ad&reqtype=music&keyword=" + MusicName); //获取快递公司数据 var pageHtml = Encoding.UTF8.GetString(Comp); //如果获取网站页面采用的是UTF-8,则使用这句JavaScriptSerializer js = new JavaScriptSerializer();var obj = js.DeserializeObject(pageHtml);Dictionary<string, object> dic = obj as Dictionary<string, object>;if (dic["errcode"].ToString() == "0"){Dictionary<string, object> dic2 = dic.Values.ToArray()[2] as Dictionary<string, object>;string title = dic2["title"].ToString();string musicurl = dic2["musicurl"].ToString();string hqmusicurl = dic2["hqmusicurl"].ToString();return ResponseMusicMsg(title, "按住可转发好友,播放失败请换首歌!", musicurl, hqmusicurl);}else {return ResponseText("[流泪] Sorry~ 你要的音乐我没有找到~ [流泪]");}}
生成微信相对应的xml
/// <summary>/// 回复音乐内容/// </summary>/// <param name="to">接收者</param>/// <param name="from">消息来源</param>/// <param name="title">标题</param>/// <param name="description">描述信息</param>/// <param name="musicurl">音乐链接</param>/// <param name="hqmusicurl">高质量音乐链接,WIFI环境优先使用该链接播放音乐</param>/// <returns>生成的输出文本</returns>public string ResponseMusicMsg(string title, string description, string musicurl, string hqmusicurl){StringBuilder sb = new StringBuilder();sb.AppendFormat("<xml>");sb.AppendFormat("<ToUserName><![CDATA[{0}]]></ToUserName>", clientUser);sb.AppendFormat("<FromUserName><![CDATA[{0}]]></FromUserName>", serverUser);sb.AppendFormat("<CreateTime>{0}</CreateTime>", DateTime.Now.Ticks.ToString());sb.AppendFormat("<MsgType><![CDATA[music]]></MsgType>");sb.AppendFormat("<Music>");sb.AppendFormat(" <Title><![CDATA[{0}]]></Title>", title);sb.AppendFormat(" <Description><![CDATA[{0}]]></Description>", description);sb.AppendFormat(" <MusicUrl><![CDATA[{0}]]></MusicUrl>", musicurl);sb.AppendFormat(" <HQMusicUrl><![CDATA[{0}]]></HQMusicUrl>", hqmusicurl);sb.AppendFormat(" <FuncFlag>0</FuncFlag>");sb.AppendFormat("</Music>");sb.AppendFormat("</xml>");return sb.ToString();}
二、效果展示
建议使用wifi时候听歌
关注重庆足下软件职业培训学院(账号cqzuxia)方法:
1. 依次进入以下路径:朋友们—>添加朋友—>搜号码,输入cqzuxia,不区分大小写,点击查找,然后点击关注。
2. 扫描二维码:
如果觉得《微信公众平台消息接口开发 点歌/音乐》对你有帮助,请点赞、收藏,并留下你的观点哦!