0
amazon PHP SDK를 사용하여 인벤토리를 업데이트하기 위해 MWS에 피드를 제출하려고합니다. 여기Amazon MWS Connection Refused FeedSubmit
내 XML :
<?xml version="1.0" encoding="utf-8"?>
<AmazonEnvelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="amznenvelope.xsd">
<Header>
<DocumentVersion>1.01</DocumentVersion>
<MerchantIdentifier>MY_MERCHANT_ID</MerchantIdentifier>
</Header>
<MessageType>Inventory</MessageType>
<Message>
<MessageID>1</MessageID>
<OperationType>Update</OperationType>
<Inventory>
<SKU>MY_SKU</SKU>
<Quantity>3</Quantity>
<FulfillmentLatency>1</FulfillmentLatency>
</Inventory>
</Message>
</AmazonEnvelope>
그리고 내 PHP 코드 :
$service = new MarketplaceWebService_Client(AWS_KEY, AWS_SECRET, CONFIG_FEEDS, APP_NAME, APP_VERSION);
$feedHandle = @fopen('php://memory', 'rw+');
fwrite($feedHandle, XML_STRING);
rewind($feedHandle);
$request = new MarketplaceWebService_Model_SubmitFeedRequest();
$request->setMerchant(MERCHANT_ID);
$request->setMarketplaceIdList(["id" => [MARKET_PLACE_1, MARKET_PLACE_2, MARKET_PLACE_3]]);
$request->setFeedType($feedType);
$request->setContentMd5(base64_encode(md5(stream_get_contents($feedHandle), true)));
rewind($feedHandle);
$request->setPurgeAndReplace(false);
$request->setFeedContent($feedHandle);
rewind($feedHandle);
$response = $service->submitFeed($request);
내가 코드를 실행하면 내가 빈 에러 응답을 얻을 : 나는에 컬을 활성화
Caught Exception: Internal Error
Response Status Code: 0
Error Code:
Error Type:
Request ID:
XML:
RequestId: ,
ResponseContext: ,
Timestamp:
ResponseHeaderMetadata:
을 오류를 표시하면 다음과 같이 표시됩니다.
나는 문제에 대해 읽고 난이 같은 Client.php의 기본 구성을 설정하는 클래스 내부의 기능에 해당 옵션 개질시키기 시도 CURLOPT_SSL_VERIFYPEER 옵션 변경에 대한 답변 보았다 또한
private function getDefaultCurlOptions() {
return array (
CURLOPT_POST => true,
CURLOPT_USERAGENT => $this->config['UserAgent'],
CURLOPT_VERBOSE => true,
CURLOPT_HEADERFUNCTION => array ($this, 'headerCallback'),
CURLOPT_RETURNTRANSFER => true,
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_SSL_VERIFYHOST => 2,
);
과
CURLOPT_CAINFO => __DIR__ . "/../../../../../cacert.pem"
하지만 성공하지 : 내 난 그냥이 같은 사실에 VERIFYPEER을 모질라에서 얻은 설정하고 인증서를 추가했습니다. 어떤 도움을 주시면 감사하겠습니다.