Pracuję nad rozszerzeniem funkcjonalności listy życzeń do interfejsu API REST Magento. Byłoby miło uzyskać dostęp do sesji klienta. Czy Magento ma jakieś wsparcie w dostępie do sesji klienta przez REST?
Pracuję nad rozszerzeniem funkcjonalności listy życzeń do interfejsu API REST Magento. Byłoby miło uzyskać dostęp do sesji klienta. Czy Magento ma jakieś wsparcie w dostępie do sesji klienta przez REST?
Odpowiedzi:
Jak wspomniano w moich komentarzach powyżej, zalecam podanie loginu użytkownika oAuth, aby uzyskać dostęp do ID klienta. Aby odpowiedzieć na pytanie: Nie, nie można uzyskać dostępu do sesji klienta.
Przepływ może wyglądać następująco:
W przypadku autoryzacji użytkownika zalecamy postępowanie zgodnie z sekcjami „Uzyskiwanie nieautoryzowanego tokena żądania” i „Autoryzacja użytkownika” na tej stronie .
Nie.
Sesja klienta jest powiązana z plikiem cookie frontonu, który ma klient przeglądający. Jeśli używasz sesji opartych na plikach, będą one przechowywane w var / session / - jeśli używasz bazy danych jako miejsca do przechowywania sesji, będą one przechowywane w core_session.
W każdym razie, aby móc uzyskać do niego dostęp, musisz znać session_id od klienta, który z założenia powinien znajdować się tylko między przeglądarką a serwerem. * 1)
Lepszym podejściem, jak zasugerowano w powyższych komentarzach, byłoby ustalenie, jakie informacje masz dla klienta (identyfikator_użytkownika, adres e-mail), a następnie dostęp do listy życzeń za jej pośrednictwem.
Kolejną rzeczą, o której należy pamiętać, jest to, że sesja ustanowiona w celu komunikacji z interfejsem API jest oddzielna od sesji klienta.
Ogólnie rzecz biorąc, uważam, że uzyskałbyś bardziej praktyczną odpowiedź, gdybyś zamieścił to, co próbujesz osiągnąć, korzystając z listy życzeń z aktualnymi ograniczeniami.
* 1) być może będziesz w stanie odczytać aktualnie używaną sesję plików cookie i zapisać ją w bazie danych w celu dalszego przetwarzania, ale ponownie będziesz potrzebować innych informacji, aby powiązać to z logiką, którą próbujesz obecnie wdrożyć, więc nie zobacz, jak to wykorzystać tutaj.
Myślę, że to, czego szukasz, to połączenie interfejsu API REST i OAuth Magento. Dzięki OAuth użytkownik frontonu może zalogować się do środowiska Magento, dając aplikacji (trzeciej stronie) i dostęp do swoich danych klientów, takich jak historia zamówień.
O ile wiem, jest to tak blisko, jak to możliwe, aby przejść do sesji klienta za pomocą interfejsu API.
Sprawdź dokumentację Magento na ten temat, a także przyjemny artykuł Inchoo