サードパーティのサーバーからデータを取得してMagento DBに保存するカスタムMagento2 Soap APIを作成しました。 データ処理ですべてが正常に機能しています。今すぐ結果を印刷すると、Objectフォームになりますが、XML形式でのみ必要です。オブジェクト([結果ObjectからXMLへMagento2 SOAP APIレスポンスを変更する方法
はstdClass:
$wsdlurl = 'MagentoStore/soap?wsdl&services=CustomDataApiManagementV1';
$token = 'XXXXXXXXXXXX';
$opts = ['http' => ['header' => "Authorization: Bearer " . $token]];
$context = stream_context_create($opts);
$addArgs = array('xmldata'=> 'testData');
try{
$soapClient = new SoapClient($wsdlUrl);
$soapClient->setSoapVersion(SOAP_1_2);
$soapClient->setStreamContext($context);
$soapResponse = $soapClient
->CustomDataApiManagementV1ProcessData($addArgs);
print_r($soapResponse);
}catch(Exception $e){
echo 'error';
}
これますprint_r($ soapResponse)として、以下の結果を示している。ここで は、私は、要求を行うために使用していたコードがあります] =>成功)
結果はXML形式でのみ必要です。
既に誰かがそれに取り組んでいるかどうか教えてください。
からあなたの
以下のようになりますでしょうソースを使用して、XMLにして、あなたのオブジェクトを変換するために 'wddx_serialize_value'機能を試したことがありますか?以下のコード
をお試しくださいこのように 'echo wddx_serialize_value($ soapResponse);' –
あなたの応答Shahrozeに感謝します!このようにして、クライアントサイト、つまりMagento SOAP APIへのリクエストを行っている場所からのみデータを変更できます。 Magento APIの終了時にこのレスポンスを変更するようにしてください。そのため、ユーザーにリクエストするAPIは最後に行う必要はありません。 – user8374657