查询返回结果时不应该返回结果

时间:2014-01-30 23:54:04

标签: gracenote

我正在尝试使用GraceNote Web API,但我得到了意想不到的结果。例如,当我运行查询以获取Green Day / Dookie /她的曲目信息时,我得到了我要求的所有内容,但如果我将album_title更改为AMERICAN IDIOT,我仍然会得到回复,说找到了24首曲目我的曲目是#21,而美国白痴上没有一首名为“她”的歌曲(所以不应该归还)。这是我的查询的副本:

<QUERIES>
  <LANG>eng</LANG>
  <AUTH>
    <CLIENT>MyClientID</CLIENT>
    <USER>MyUserID</USER>
  </AUTH>
  <QUERY CMD="ALBUM_SEARCH">
    <MODE>SINGLE_BEST_COVER</MODE>
    <TEXT TYPE="ARTIST">green day</TEXT>
    <TEXT TYPE="ALBUM_TITLE">american idiot</TEXT>
    <TEXT TYPE="TRACK_TITLE">she</TEXT>
    <RANGE>
        <START>1</START>
        <END>1</END>
    </RANGE>
    <OPTION>
        <PARAMETER>SELECT_EXTENDED</PARAMETER>
        <VALUE>COVER,LINK,ARTIST_BIOGRAPHY</VALUE>  
      </OPTION>
      <OPTION>
        <PARAMETER>COVER_SIZE</PARAMETER>
        <VALUE>THUMBNAIL</VALUE>
      </OPTION>
  </QUERY>
</QUERIES>

有人可以解释为什么我得到一个结果?

我也遇到其他异常情况,但我会将它们作为单独的问题发布。

1 个答案:

答案 0 :(得分:1)

Gracenote数据库非常全面,几乎包含了世界上所有的CD。你偶然发现的可能是一张“灰色市场”编辑CD,其中包含了所有美国白痴,以及一堆B面和其他点击。根据我们的统计数据,它在某些国家/地区实际上是一个相当受欢迎的编辑,但我无法在线找到该产品的任何链接。

如果您从ALBUM_SEARCH获得的专辑GN_ID上执行了ALBUM_FETCH,则可以看到此CD上所有24首曲目的列表。

<QUERIES>
  <LANG>eng</LANG>
  <AUTH>
    <CLIENT>YourClientID</CLIENT>
    <USER>YourUserID</USER>
  </AUTH>
  <QUERY CMD="ALBUM_FETCH">
    <GN_ID>72313663-EEE803E4BAB5BE208EA8278B77321863</GN_ID>
  </QUERY>
</QUERIES>

如果您在没有ALBUM_TITLE字段的情况下执行原始查询,您将在“Dookie”上获得正确版本的“她”。