2013-04-23 86 views
0

當我使用在Linux亞馬遜MWS PHP API CLI中的代碼返回的bebug信息負載 - 開始輸出: -刪除調試信息

About to connect() to mws.amazonservices.co.uk port 443 (#0) 
Trying 178.236.4.102... connected 
Connected to mws.amazonservices.co.uk (178.236.4.102) port 443 (#0) 
Initializing NSS with cer.... 

實際PHP代碼是如下所示: -

include_once ('MarketplaceWebService/.config.inc.php'); 

function SubmitFeed(MarketplaceWebService_Interface $service, $request) 
{ 
try { 
     $response = $service->submitFeed($request); 
      if ($response->isSetSubmitFeedResult()) { 
       $submitFeedResult = $response->getSubmitFeedResult(); 
       if ($submitFeedResult->isSetFeedSubmissionInfo()) { 
        $feedSubmissionInfo = $submitFeedResult->getFeedSubmissionInfo(); 
        if ($feedSubmissionInfo->isSetFeedSubmissionId()) 
        { 
         return $feedSubmissionInfo->getFeedSubmissionId(); 
        } 
       } 
      } 
} catch (MarketplaceWebService_Exception $ex) { 
    echo("Caught Exception: " . $ex->getMessage() . "\n"); echo("Response Status Code: " . $ex->getStatusCode() . "\n"); 
    echo("Error Code: " . $ex->getErrorCode() . "\n"); echo("Error Type: " . $ex->getErrorType() . "\n"); 
    echo("Request ID: " . $ex->getRequestId() . "\n"); echo("XML: " . $ex->getXML() . "\n"); 
    echo("ResponseHeaderMetadata: " . $ex->getResponseHeaderMetadata() . "\n"); 
    } 
} 


$xml = '<?xml version="1.0" encoding="utf-8"?> 
<AmazonEnvelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="amzn-envelope.xsd"> 
<Header> 
<DocumentVersion>1.01</DocumentVersion> 
<MerchantIdentifier>xxxxxxxxxx</MerchantIdentifier> 
</Header> 
<MessageType>Inventory</MessageType> 
<Message> 
<MessageID>1</MessageID> 
<OperationType>Update</OperationType> 
<Inventory> 
<SKU>VWDTA29E</SKU> 
<Quantity>41</Quantity> 
</Inventory> 
</Message> 
</AmazonEnvelope>'; 


$xmlHandle = @fopen('php://temp', 'rw+'); 
fwrite($xmlHandle, $xml); 
rewind($xmlHandle); 
$md5 = base64_encode(md5(stream_get_contents($xmlHandle), true)); 

$parameters = array (
    'Merchant' => MERCHANT_ID, 
    'FeedType' => '_POST_INVENTORY_AVAILABILITY_DATA_', 
    'FeedContent' => $xmlHandle, 
    'PurgeAndReplace' => false, 
    'ContentMd5' => $md5, 
); 

$request = new MarketplaceWebService_Model_SubmitFeedRequest($parameters); 
echo $feedsubmissionid = SubmitFeed($service, $request); 

如何阻止顯示此信息,因爲這僅用於測試而非生產?

乾杯

回答

0

不能與幫助,我面臨同樣的問題,其難以跟蹤你的輸出爲好。但嘗試通過追蹤回聲語句來編輯Feeds API類文件,如果有的話!

祝您好運...

+0

我可以看到沒有echo,var-dumps和print_r。我在函數調用過程中嘗試過ob_start()和ob_end_flush(),但這也不起作用!我很困惑! – l0ckm4 2013-04-23 10:41:01

+1

發現它 - 在私人函數getDefaultCurlOptions中的Client.php rem rem或設置CURLOPT_VERBOSE = false! :-) – l0ckm4 2013-04-23 10:48:49

1

發現了它 - 在Client.php在私有函數getDefaultCurlOptions REM出或設置CURLOPT_VERBOSE =假的!