Я использую spree для создания своего приложения для электронной коммерции. Он использует Devise gem для аутентификации. Каждый раз, когда создается заказ, с ним связан случайный guest_token. В моем приложении я использовал функциональность, в которой я связываю заказ с электронной почтой при выполнении гостевой проверки, у которой уже есть guest_token. Основная проблема: когда заказ завершен, guest_token уносятся дальше, т. е. если другой пользователь входит в систему, то завершенный заказ связан с пользователем как его guest_token, и завершенный заказ guest_token одинаковый. Это не происходит, если пользователь подписывается, а затем размещает заказ. Что я здесь делаю неправильно? Почему Devise генерирует guest_token и связывает его с порядком в spree? Как избавиться от этого?Какая польза guest_token в spree или rails при использовании Devise
0
A
ответ
0
Об этом говорится в документации здесь https://guides.spreecommerce.com/api/orders.html со следующими сказать:
Параметр
order_token
будет работать для авторизации каких-либо действий для заказа в API Шпрее в.
* Примечание: order_token
== guest_token
Имея этот маркер затем позволяет использовать этот запрос API, который получает деталь заказа, где:
http://domainname.com/store/api/orders/R744620229?order_token=deMRSmjCxc5C1cwlkT6-Ow
- 'R000000000' => Номер для заказа
- 'XXXXSmjCxc5C1cwlkT6-Ow' => Гость Token of order (также называемый ord er_token)
Мы также должны добавить эту строку в Spree::Api::Config[:requires_authentication] = false
config/initializers/spree.rb
иметь функционирование API.