Я создал файл сценария в корне, и я хочу создать нового клиента из этого файла ниже, мой код для этого.
use Magento\Framework\App\Bootstrap;
//use Magento\Customer\Api\Data\CustomerInterface;
require __DIR__ . '/../../app/bootstrap.php';
$bootstrap = Bootstrap::create(BP, $_SERVER);
$obj = $bootstrap->getObjectManager();
$obj->get('Magento\Framework\App\State')->setAreaCode('frontend');
$customerData = [
'customer' => [
'email' => 'demo@user.com',
'firstname' => 'John',
'lastname' => 'Wick',
],
'password' => 'John123'
];
$customer=$obj->get('\Magento\Customer\Api\AccountManagementInterface');
$customer->createAccount($customerData);
но когда я запускаю этот код, он выдает ошибку ниже.
Неустранимая ошибка : необработанная ошибка TypeError: Аргумент 1, переданный в Magento \ Customer \ Model \ AccountManagement \ Interceptor :: createAccount (), должен быть экземпляром Magento \ Customer \ Api \ Data \ CustomerInterface, заданный массив Вызывается в C: \ wamp64 \ www \ mg \ m2 \ rest \ v3 \ Customer.php в строке 82 и определяется в C: \ wamp64 \ www \ mg \ m2 \ generate \ code \ Magento \ Customer \ Model \ AccountManagement \ Interceptor.php: 124
Трассировка стека:
0 C: \ wamp64 \ www \ mg \ m2 \ rest \ v3 \ Customer.php (82): Magento \ Customer \ Model \ AccountManagement \ Interceptor-> createAccount (Array)
1 C: \ wamp64 \ www \ mg \ m2 \ rest \ v3 \ api.php (7): require_once ('C: \ wamp64 \ www \ m ...')
2 {main}
брошено в
C: \ wamp64 \ www \ mg \ m2 \ generate \ code \ Magento \ Customer \ Model \ AccountManagement \ Interceptor.php on line
124
Пожалуйста, помогите. на самом деле я хочу получить доступ к методу веб-API непосредственно из кода и получить ответ, чтобы я мог соответствующим образом изменить этот ответ. потому что у нас уже есть приложение, работающее в magento 1.9. поэтому мы не хотим менять ответ