Php Magento Api Rest Создает Проблему с Паролем Клиента:
Я использую api Rest версии 2.1.2 Magento для создания пользователей, следуя этому : http://devdocs.magento.com/guides/m1x/api/rest/Resources/resource_customers.html#RESTAPI-Resource-Customers-HTTPMethod-POST-customers
$data = [
"customer" => [
"firstname" => 'Earl',
"lastname" => 'Hickey',
"email" => '[email protected]',
"password" => 'password',
"website_id" => 1,
'store_id' => 1,
"group_id" => 1
]
];
$token = $this->get('lp_api')->getToken();
$ch = curl_init( $this->endpoint . 'customers');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_VERBOSE, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
"Content-Type: application/json", "Authorization: Bearer " . json_decode( $token ),
)
);
// var_dump(curl_getinfo($c));
$result = curl_exec($ch);
Если я отправлю пароль (как в примере выше), я получу следующую ошибку:
Next Exception: Report ID: webapi-583357a3bf02f; Message: Property "Password" does not have corresponding setter in class "Magento\Customer\Api\Data\CustomerInterface". in /var/www/html/www.magento.dev/vendor/magento/framework/Webapi/ErrorProcessor.php:195
Я заметил, что если я удалю "пароль" => "пароль" из массива $data, пользователь создается без пароля (мне кажется странным).
Я не могу найти никакой помощи по этой ошибке. Есть у кого-нибудь идеи?
1 answers
Смотрите ссылку ниже для версии Magento 2.x. http://devdocs.magento.com/swagger/index_20.html#/
Я использовал приведенное ниже тело для создания клиентов через Rest Api, и оно работало правильно.
{ "клиент": {
"электронная почта": "[email protected] ", "имя": "x", "фамилия": "y", "идентификатор веб-сайта": 1, "идентификатор группы":1, "пользовательские атрибуты": [ { "код атрибута": "мобильный номер", "значение": "1234567890" } ]
},
"пароль": "123456"
}