0

Gracenote示例页面指出,当提供选项时,可以接收多个专辑的数据,包括一个专辑 url(COVER_SIZE 被忽略)SELECT_EXTENDED=COVER

我的 xml 请求看起来像

<QUERIES>
<AUTH>
    <CLIENT>xxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</CLIENT>
    <USER>xxxxxxxxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</USER>
</AUTH>
<LANG>ger</LANG>
<COUNTRY>deu</COUNTRY>
<QUERY CMD="ALBUM_SEARCH">
    <TEXT TYPE="ARTIST">The Beatles</TEXT>
    <TEXT TYPE="ALBUM_TITLE">Help</TEXT>
    <RANGE>
        <START>1</START>
        <END>20</END>
    </RANGE>
    <OPTION>
        <PARAMETER>SELECT_EXTENDED</PARAMETER>
        <VALUE>COVER</VALUE>
    </OPTION>
</QUERY>

```

我使用范围来接收每张专辑的数据,但没有一个包含 url。我切换到 C# API 并编写了一个小程序

ParkSquare.Gracenote.GracenoteClient c = new ParkSquare.Gracenote.GracenoteClient("xxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx");
ParkSquare.Gracenote.AlbumSearcher s=new ParkSquare.Gracenote.AlbumSearcher(c);

ParkSquare.Gracenote.SearchCriteria cr=new ParkSquare.Gracenote.SearchCriteria();
cr.AlbumTitle = "help";
cr.Artist = "the beatles";
cr.SearchOptions = ParkSquare.Gracenote.SearchOptions.Cover;
cr.SearchMode = ParkSquare.Gracenote.SearchMode.Default;

for (var ilauf = 0; ilauf < 5; ilauf++)
{
    cr.Range = new ParkSquare.Gracenote.Range((ilauf * 20) + 1, (ilauf+1) * 20 );
    ParkSquare.Gracenote.SearchResult sr = s.Search(cr);
    foreach(var a in sr.Albums)  {
        Console.WriteLine( string.Format("{0} {1}",a.Title, a.Artwork.Count()) );
    }
}
Console.ReadLine();

它显示没有任何专辑的专辑封面。有错误吗?我错过了什么吗?是否更改了 API,不再支持该功能?

4

1 回答 1

1

我也有同样的问题。令人惊讶的是,使用 MODE=SEARCH_BEST_COVER 搜索封面会返回艺术品(当然有一个很大的缺点:结果列表仅包含一张专辑)。

于 2015-03-01T19:16:07.940 回答