Exemplo n.º 1
0
        /// <summary>
        /// 构建查询参数
        /// </summary>
        /// <param name="songName">歌曲名</param>
        /// <param name="artistName">歌手</param>
        private object BuildParameters(string songName, string artistName)
        {
            string _encodeArtistName = _httpClient.URL_Encoding(artistName, Encoding.UTF8);
            string _encodeSongName   = _httpClient.URL_Encoding(songName, Encoding.UTF8);

            return(new NetEaseSearchRequestModel($"{_encodeArtistName}+{_encodeSongName}"));
        }
Exemplo n.º 2
0
        /// <summary>
        /// 获取歌曲 SID 信息
        /// </summary>
        /// <param name="artist">艺术家</param>
        /// <param name="songName">歌曲名</param>
        private NetEaseSongModel GetMusicInfoByNetease(string artist, string songName)
        {
            string _artist    = m_netUtils.URL_Encoding(artist, Encoding.UTF8);
            string _title     = m_netUtils.URL_Encoding(songName, Encoding.UTF8);
            string _searchKey = $"{_artist}+{_title}";

            var _result = m_netUtils.Post <NetEaseResultModel>(url: @"http://music.163.com/api/search/get/web",
                                                               parameters: new NetEaseSearchRequestModel(_searchKey),
                                                               referer: "http://music.163.com",
                                                               mediaTypeValue: "application/x-www-form-urlencoded");

            return(_result.result.songs[0]);
        }
Exemplo n.º 3
0
        /// <summary>
        /// 获取歌曲 SID 信息
        /// </summary>
        /// <param name="artist">艺术家</param>
        /// <param name="songName">歌曲名</param>
        private NetEaseSongModel GetMusicInfoByNetease(string artist, string songName)
        {
            string encodingAritst = _mNetUtils.URL_Encoding(artist, Encoding.UTF8);
            string encodingTitle  = _mNetUtils.URL_Encoding(songName, Encoding.UTF8);
            string searchKey      = $"{encodingAritst}+{encodingTitle}";

            var result = _mNetUtils.Post <NetEaseResultModel>(url: @"http://music.163.com/api/search/get/web",
                                                              parameters: new NetEaseSearchRequestModel(searchKey),
                                                              referer: "http://music.163.com",
                                                              mediaTypeValue: "application/x-www-form-urlencoded");

            var sidInfo = result?.result?.songs ?? throw new ServiceUnavailableException("专辑图像下载:请求 SID 时出错,没有 SID 数据.");

            if (sidInfo.Count == 0)
            {
                throw new ServiceUnavailableException("专题图像下载:请求 SID 时出错,SID 集合没有数据.");
            }

            return(result.result.songs[0]);
        }