Magento SOAP WebService -> Вход для пользователей - PullRequest
5 голосов
/ 27 мая 2011

Я пишу веб-сервис для связи между мобильным устройством и magento, я использую веб-сервисы SOAP, которые предоставляет Magento, однако я теряюсь при аутентификации пользователя, мне нужно аутентифицировать пользователя моей системы (не пользователя API) ). Есть ли какая-нибудь подсказка по этому поводу?

Ответы [ 4 ]

1 голос
/ 03 декабря 2016

Используйте это

$mageFilename = 'app/Mage.php';
require_once $mageFilename;
$app = Mage::app('default'); 
Mage::app();
$user = "snjha77@gmail.com";
$pass = "admin123";
$session = Mage::getSingleton( 'customer/session' );
    Mage::app()->getStore()->setWebsiteId(1);
    try
    {
        $session->login( $user, $pass);
        $customer = $session->getCustomer();
        //echo "valid";
        $userID = $session->getCustomer()->getId();
    $return_array['customer_id'] = $userID;
        $return_array['status'] = 1;
        $return_array['message'] = "Login is valid";
        echo json_encode($return_array);
        } catch( Exception $e ) {
            $return_array['status']= 0;
        $return_array['message']="Login is invalid";
        echo json_encode($return_array);
              }
1 голос
/ 03 сентября 2013

Вы можете использовать REST API для аутентификации клиента. http://www.magentocommerce.com/api/rest/introduction.html

Этот подход кажется более удобным, поскольку вы можете получить список продуктов с примененными правилами каталога для вошедшего в систему клиента (скажем, примененный группой клиентов). SOAP API не предоставляет такую ​​функцию (вы можете получать список продуктов только как администратор).

1 голос
/ 02 ноября 2012

Вы не можете использовать SOAP Api для входа в учетную запись пользователя в magento, так как она не поддерживает эту функцию, вам нужно подойти к ней по-другому, возможно, переопределив файл контроллера в Mage Customer с именем AccountController.php.Попробуйте добавить новый метод, который может взаимодействовать с сервером с переменной JSON.

0 голосов
/ 03 ноября 2012

Нет, вы не можете этого сделать. Если у вас есть доступ к файлам через FTP, вы можете получить файл_конфигурации базы данных, затем подключиться к базе данных из внешнего источника и выполнить проверку доступа пользователя.

Применяйте на свой страх и риск. Может быть, это не действительно. Но вы можете попробовать это!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...