2011-08-23 159 views
3

我使用PHP Soap Library連接到亞馬遜並從ASIN檢索產品封面。我已經完成了很多工作,但根據Agreement(至少據我所知,IANAL),我從API獲得的任何信息都必須鏈接到亞馬遜零售網站上的各自的「產品詳細信息」頁面。我瀏覽了docs,但對於我的生活,我無法弄清楚我需要使用什麼方法等,而不是手動構建URL(這可能不穩定)。任何見解?亞馬遜產品廣告API:從ASIN獲取產品詳細信息URL

回答

3

想通了。這是我最終使用的代碼:

<?php 
class AmazonMusicSearch extends AmazonECS { 
    protected $asin; 
    protected $detailPageUrl; 
    protected $ecs; 

    function __get($name) { 
     return $this->$name; 
    } 

    function __construct() { 
     $this->ecs = new parent(AZ_APP_ID, AZ_APP_SECRET, 'com', AZ_ASSOCIATE_TAG); 
    } 

    function searchByAsin($asin) { 
     $search = $this->ecs->responseGroup('Small')->category('Music')->search($asin); 

     $this->asin = $asin; 

     if(isset($search['Items']['Item']['DetailPageURL'])) { 
      $this->detailPageUrl = $search['Items']['Item']['DetailPageURL']; 
     } elseif(isset($search['Items']['Item'][0]['DetailPageURL'])) { 
      $this->detailPageUrl = $search['Items']['Item'][0]['DetailPageURL']; 
     } else { 
      return false; 
     } 

     return $this; 
    } 

    function detailPageFromAsin($asin) { 
     return $this->searchByAsin($asin)->detailPageUrl; 
    } 
} 
?> 
相關問題