2016-12-12 23 views
0

在我們的Sonos Music API實現中,即時通訊運行時遇到了請求相冊容器的問題。第一次請求專輯時,它總是失敗並顯示消息「無法瀏覽音樂」。如果您再按一下,然後再次打開同一專輯,則會打開並顯示曲目列表和專輯詳細信息。Sonos Music API實現第一次請求時出現「無法瀏覽音樂」錯誤

我確實檢查了第一個和第二個請求之間的響應是否與我們的服務器有任何差異,但沒有區別。也沒有任何時間差異(請求加載(兩次)在我的開發人員站200毫秒以下)。

我還使用SoapUI來驗證Soap服務器返回正確的數據,並驗證沒有任何錯誤。

測試套件也不返回任何錯誤或警告。

有沒有辦法看到實際的錯誤?或者有關如何解決這個問題的建議?

一個典型請求看起來像:

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"> 
    <s:Header> 
     <credentials xmlns="http://www.sonos.com/Services/1.1"> 
     <sessionId>f42257a8-c046-11e6-82d0-d4bed9ed478a</sessionId> 
     <deviceId>xx-xx-00-00-00-00:x</deviceId> 
     <deviceProvider>Sonos</deviceProvider> 
     </credentials> 
    </s:Header> 
    <s:Body> 
     <getMetadata xmlns="http://www.sonos.com/Services/1.1"> 
     <id>album:112779295</id> 
     <index>0</index> 
     <count>30</count> 
     </getMetadata> 
    </s:Body> 
</s:Envelope> 

和響應:

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://www.sonos.com/Services/1.1"> 
    <SOAP-ENV:Body> 
     <ns1:getMetadataResponse> 
     <ns1:getMetadataResult> 
      <ns1:index>0</ns1:index> 
      <ns1:count>13</ns1:count> 
      <ns1:total>13</ns1:total> 
      <ns1:mediaCollection> 
       <ns1:id>album:112779295</ns1:id> 
       <ns1:itemType>album</ns1:itemType> 
       <ns1:displayType>list</ns1:displayType> 
       <ns1:title>Kenny B - Kenny B</ns1:title> 
       <ns1:summary>blop</ns1:summary> 
       <ns1:isFavorite>true</ns1:isFavorite> 
       <ns1:language>NL</ns1:language> 
       <ns1:country>NL</ns1:country> 
       <ns1:genreId>genre:1</ns1:genreId> 
       <ns1:genre>Nederlands</ns1:genre> 
       <ns1:twitterId/> 
       <ns1:liveNow>false</ns1:liveNow> 
       <ns1:onDemand>true</ns1:onDemand> 
       <ns1:artist>Kenny B</ns1:artist> 
       <ns1:artistId>artist:1425214</ns1:artistId> 
       <ns1:canScroll>true</ns1:canScroll> 
       <ns1:canPlay>true</ns1:canPlay> 
       <ns1:canEnumerate>true</ns1:canEnumerate> 
       <ns1:canAddToFavorites>true</ns1:canAddToFavorites> 
       <ns1:containsFavorite>false</ns1:containsFavorite> 
       <ns1:canCache>false</ns1:canCache> 
       <ns1:canSkip>false</ns1:canSkip> 
       <ns1:albumArtURI>https://mobile.unplug.de/artwork.php?id=112779295&amp;w=300</ns1:albumArtURI> 
       <ns1:authRequired>false</ns1:authRequired> 
       <ns1:homogeneous>false</ns1:homogeneous> 
       <ns1:canAddToFavorite>true</ns1:canAddToFavorite> 
      </ns1:mediaCollection> 
      <ns1:mediaMetadata> 
       <ns1:id>track:610294458</ns1:id> 
       <ns1:itemType>track</ns1:itemType> 
       <ns1:displayType>List</ns1:displayType> 
       <ns1:title>Alleen Jij</ns1:title> 
       <ns1:mimeType>application/x-mpegURL</ns1:mimeType> 
       <ns1:trackMetadata> 
        <ns1:artistId>artist:1425214</ns1:artistId> 
        <ns1:artist>Kenny B</ns1:artist> 
        <ns1:albumId>album:112779295</ns1:albumId> 
        <ns1:albumArtistId>artist:1425214</ns1:albumArtistId> 
        <ns1:duration>223</ns1:duration> 
        <ns1:rating>1</ns1:rating> 
        <ns1:albumArtURI>https://mobile.unplug.de/artwork.php?id=112779295&amp;w=300</ns1:albumArtURI> 
        <ns1:trackNumber>1</ns1:trackNumber> 
        <ns1:canPlay>true</ns1:canPlay> 
        <ns1:canSkip>true</ns1:canSkip> 
        <ns1:canAddToFavorites>true</ns1:canAddToFavorites> 
       </ns1:trackMetadata> 
      </ns1:mediaMetadata> 
      <ns1:mediaMetadata> 
       <ns1:id>track:610294459</ns1:id> 
       <ns1:itemType>track</ns1:itemType> 
       <ns1:displayType>List</ns1:displayType> 
       <ns1:title>Als Je Gaat</ns1:title> 
       <ns1:mimeType>application/x-mpegURL</ns1:mimeType> 
       <ns1:trackMetadata> 
        <ns1:artistId>artist:1425214</ns1:artistId> 
        <ns1:artist>Kenny B</ns1:artist> 
        <ns1:albumId>album:112779295</ns1:albumId> 
        <ns1:albumArtistId>artist:1425214</ns1:albumArtistId> 
        <ns1:duration>191</ns1:duration> 
        <ns1:rating>1</ns1:rating> 
        <ns1:albumArtURI>https://mobile.unplug.de/artwork.php?id=112779295&amp;w=300</ns1:albumArtURI> 
        <ns1:trackNumber>2</ns1:trackNumber> 
        <ns1:canPlay>true</ns1:canPlay> 
        <ns1:canSkip>true</ns1:canSkip> 
        <ns1:canAddToFavorites>true</ns1:canAddToFavorites> 
       </ns1:trackMetadata> 
      </ns1:mediaMetadata> 
      ... 
     </ns1:getMetadataResult> 
     </ns1:getMetadataResponse> 
    </SOAP-ENV:Body> 
</SOAP-ENV:Envelope> 

回答

0

顯然當在響應一個mediaCollection此的原因。經過大量的調試和嘗試後,我發現通過簡單地將其從響應中刪除即可解決問題。

0

我也有這個問題,我不確定是什麼原因導致它,但它停止了,只要極限是< = 99我在我的SQL查詢的末尾放了一個LIMIT來獲取曲目(Sonos在getMetadata帖子中請求的默認項目數)。我希望這與返回比Sonos預期更多的物品有關。

相關問題