1

XML フィードを使用して _POST_PRODUCT_DATA_ のリクエストを送信し、cURL 経由で送信しようとしています。

エラーが発生しています。

SenderContentMD5DoesNotMatchthe Content-MD5 HTTP ヘッダーでフィードに渡したものが、フィードで計算した Content-MD5 と一致しませんでした

XML の出力を取得して Amazon スクラッチパッドに渡しました。MD5 の結果は、XML を取得してオンラインの MD5 ハッシュ クリエーターで実行した場合と同じです。

しかし、サーバーで md5($xml) の結果を出力すると、結果が異なります。これはうまくいきません。

これは、cURL リクエストの作成に使用されるコードです。

$ch = curl_init();
curl_setopt($ch,CURLOPT_URL, $curlToSend);
curl_setopt($ch,CURLOPT_POST, 1);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_POSTFIELDS,$xml);
curl_setopt($ch,CURLOPT_HTTPHEADER, array("Content-Type: text/xml","Content-MD5: ".base64_encode(md5($xml)),"x-amazon-user-agent: MyScriptName/1.0"));
$result = curl_exec($ch);
curl_close($ch);

$curlToSend は POST リクエストで、$xml は明らかにフィード用に構築された $xml コードです。

誰か助けてください!?

4

1 に答える 1