2017-08-13 11 views
0

ASINS(1行に1列)のテキストファイルからリクエストしたい。しかし、私はいつもエラーが発生します。このファイルのASINは20個以下です。 IエラーGetCompetitivePricingForASINSampleで配列が機能しないAmazon MWS PHP

「警告得る:rawurlencode()は、パラメータ1がCで 与えられた文字列、配列ことを期待:\ XAMPP \ htdocsに\ MarketplaceWebServiceProducts \ Client.phpキャッチライン又は

オン例外:入力値のための 余分な空白:「」応答ステータスコード:400 エラーコード:InvalidRequestのエラータイプ

パラメータASINList.ASIN.1は、検証チェックに失敗しました

私はそう書いても動作しません。

$asin_list->setASIN(array($arr[0],$arr[1])); 

私はそう書く場合には、

$asin_list = new MarketplaceWebServiceProducts_Model_ASINListType(); 
$asin_list->setASIN(array('0470165057' ,'3944660110' 
,'3000383964' ,'3000567852'.... 

の仕組み私は1000年ASINSを持つファイルからリスト(1つのリクエスト20 ASINs)を持つファイルからの要求を作るのですか?

私を助けてください。 私の英語の謝罪と

PS。 ([0] => 3944660110ますprint_r

アレイとAsin.txtから 結果[1] => 3000383964 [2] => 3000400567 [3] => 3000449523 [4] => 3000489169 [5] => 3000518290 [6] => 3000539069)

asin.txt - 1ライン1 ASIN

$request = new MarketplaceWebServiceProducts_Model_GetLowestOfferListingsForASINRequest(); 
$request->setSellerId(MERCHANT_ID); 

$arr = file('asin.txt',FILE_IGNORE_NEW_LINES); 
$arr_chunks = array_chunk($arr, 20, TRUE); 

$request->setMarketplaceId(MARKETPLACE_ID); 
$asin_list = new MarketplaceWebServiceProducts_Model_ASINListType(); 

//$asin_list->setASIN($arr_chunks[0]); 
//$request->setASINList($asin_list); 

If $ asin_list-> setASIN ($ arr_chunks [0]); - Works 
If $ asin_list-> setASIN ($ arr_chunks [1]); - Dont Work 
+0

'$ asin_list-> setASIN($のARR);'動作するはずです、ファイルは以下の20行を持っていると仮定すると(それはあなたの中に7を持っていますprint_rでダンプされた例)、すべての要素が整数ではなく文字列であることを示しています(print_rはそれを明らかにしません、var_dumpとなります)。 – Hazzit

答えて

0

あなたは20代などのグループにあなたの1000年asinsを分割する)(array_chunk使用することができます私はこのコードを使用し、それが動作

$asins_chunks = array_chunk($asins_array, 20, TRUE); 

$service = new 
MarketplaceWebServiceProducts_Client($this->aws_access_key, 
$this->aws_secret_access_key, $this->application_name, 
$this->application_version, $this->config); 

$request = new MarketplaceWebServiceProducts_Model_GetLowestOfferListingsForASINRequest(); 
$request->setSellerId($this->seller_id); 
$request->setMarketplaceId($this->marketplace_id); 

//requesting product's data for "New" products 
$request->setItemCondition("New"); 

//excluding our price data in product api response 
$request->setExcludeMe(TRUE); 

$asin_list = new MarketplaceWebServiceProducts_Model_ASINListType(); 

//creating $iec_asins array for returning price data back 
$asins = array("ASIN1","ASIN2","ASIN3"); 

$asin_list->setASIN($asins); 
$request->setASINList($asin_list);