2015-01-15 1 views
0

gracenote samples page은 옵션 SELECT_EXTENDED=COVER이 제공되면 하나의 albumart URL (COVER_SIZE는 무시 됨)을 포함하여 여러 앨범의 데이터를 수신 할 수 있다고합니다. 나는 모든 앨범의 데이터를 수신 범위와 함께 연주 그러나 아무도는 URL을 포함하지``gracenote API의 SELECT_EXTENDED = COVER 옵션이 아트웍을 반환하지 않습니다.

`

<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> 

처럼

내 XML 요청 보인다. 나는 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(); 

그것은 어떤 앨범에는 albumart을 보여줍니다을 썼다. 오류가 있습니까? 내가 놓친 게 있니? API가 변경되었는데 기능이 더 이상 지원되지 않습니까?

답변

1

동일한 문제가 있습니다. 놀랍게도 MODE = SEARCH_BEST_COVER로 표지를 검색하면 작품이 반환됩니다 (단 하나의 큰 단점이 있습니다. 결과 목록에는 단 하나의 앨범 만 포함됨).

관련 문제