Еще один шаг, чтобы завершить регистрацию из Facebook
Веселье 3.1 в Героку. После установки gem 'spree_social': git => ' https://github.com/spree-contrib/spree_social', ветвь: '3-1-stable' и настройка, как описано в gem doc.and developer.facebook.com Я не могу войти используя Facebook Butoon
И разработка и производство продолжали просить
One more step to complete your registration from Facebook
Что возможно пошло не так?: уже настроен идентификатор FB APP и секретный ключ FB APP в Spree: Настройка доменов приложений с помощью http://sub.domain.com/: Да на клиентском OAuth-логине и веб-OAuth-логине: нет принудительной повторной аутентификации OAuth через Web и встроенном браузерном OAuth-логине
Он спрашивается каждый раз, когда нажимаете FB Login, затем вводите логин / пароль (как это должно быть только в первый раз.?
$ heroku logs -t
2016-11-30T18:39:08.242440+00:00 app[web.1]: Started GET "/users/auth/facebook" for 24.253.3.125 at 2016-11-30 18:39:08 +0000
2016-11-30T18:39:08.245300+00:00 app[web.1]: I, [2016-11-30T18:39:08.245245 #4] INFO -- omniauth: (facebook) Calling through to underlying application for setup.
2016-11-30T18:39:08.246504+00:00 app[web.1]: I, [2016-11-30T18:39:08.246446 #4] INFO -- omniauth: (facebook) Request phase initiated.
2016-11-30T18:39:08.690859+00:00 app[web.1]: Started GET "/users/auth/facebook/callback?code=AQCvn-9bgYXYsw8J4rMHzaXkQFzulZKWrxVzokGsi6l2adj2zsDTB5YUTPoCEwzjLcEdGGohpfuIJ7r_QtiABIdoIBLKTDCtfms2v6jW7yjE7VfthoHgpvRtsJXz8xJL2pIp6BmvHHxq9Ahfnjir3GzWTjbMLJ_300LgpAMoy0PHsjAZh6nzIpyaiQ_PD4HWSqaHfMQds2r-Yd88gS8qJRvvO2qwkBQEXj-4Uaer4uhOnnRKs05SxRrQZAc0mE-gHBiHT-8NXWzmQMEvepBTNJllAfJdamhW78NisYcLHRZRwU0FDyyUVQU5YcIk4vAI_yQ9JKvlpvlNx2fdnw8E5wn45tSs_mZiSgoLhU8Cxg2jBg&state=eb30a2462d75546d28439534dcc560761a5eafefa5b47a75" for 24.253.3.125 at 2016-11-30 18:39:08 +0000
2016-11-30T18:39:08.692550+00:00 app[web.1]: I, [2016-11-30T18:39:08.692484 #4] INFO -- omniauth: (facebook) Calling through to underlying application for setup.
2016-11-30T18:39:08.693727+00:00 app[web.1]: I, [2016-11-30T18:39:08.693638 #4] INFO -- omniauth: (facebook) Callback phase initiated.
2016-11-30T18:39:08.927577+00:00 app[web.1]: Processing by Spree::OmniauthCallbacksController#facebook as HTML
2016-11-30T18:39:08.927612+00:00 app[web.1]: Parameters: {"code"=>"AQCvn-9bgYXYsw8J4rMHzaXkQFzulZKWrxVzokGsi6l2adj2zsDTB5YUTPoCEwzjLcEdGGohpfuIJ7r_QtiABIdoIBLKTDCtfms2v6jW7yjE7VfthoHgpvRtsJXz8xJL2pIp6BmvHHxq9Ahfnjir3GzWTjbMLJ_300LgpAMoy0PHsjAZh6nzIpyaiQ_PD4HWSqaHfMQds2r-Yd88gS8qJRvvO2qwkBQEXj-4Uaer4uhOnnRKs05SxRrQZAc0mE-gHBiHT-8NXWzmQMEvepBTNJllAfJdamhW78NisYcLHRZRwU0FDyyUVQU5YcIk4vAI_yQ9JKvlpvlNx2fdnw8E5wn45tSs_mZiSgoLhU8Cxg2jBg", "state"=>"eb30a2462d75546d28439534dcc560761a5eafefa5b47a75"}
2016-11-30T18:39:08.929944+00:00 app[web.1]: Spree::UserAuthentication Load (1.2ms) SELECT "spree_user_authentications".* FROM "spree_user_authentications" WHERE "spree_user_authentications"."provider" = $1 AND "spree_user_authentications"."uid" = $2 LIMIT 1 [["provider", "facebook"], ["uid", "163770347430817"]]
2016-11-30T18:39:08.932153+00:00 app[web.1]: Spree::User Load (1.2ms) SELECT "spree_users".* FROM "spree_users" WHERE "spree_users"."deleted_at" IS NULL AND "spree_users"."email" IS NULL LIMIT 1
2016-11-30T18:39:08.935508+00:00 app[web.1]: (1.0ms) BEGIN
2016-11-30T18:39:08.937492+00:00 app[web.1]: (0.9ms) ROLLBACK
2016-11-30T18:39:08.938440+00:00 app[web.1]: Redirected to http://MYSUB.DOMAIN.com/user/spree_user/sign_up
2016-11-30T18:39:08.938569+00:00 app[web.1]: Completed 302 Found in 11ms (ActiveRecord: 4.2ms)
1 ответ
У меня была та же проблема - я получал сообщение "Еще один шаг, чтобы завершить регистрацию через Facebook". Оказывается, это потому, что я добавил пару полей в свою модель Spree::User и проверял их наличие (проверяет:first_name,:last_name,sence: true). Стандартный spree-social code заполняет только адрес электронной почты, а затем пытается сохранить пользователя. Сбой (так как он не заполнил first_name и last_name), поэтому он отображает это сообщение. Я закомментировал мою строку проверки, и все это работает. Теперь мне нужно выяснить, как вернуть first_name и last_name из Facebook, чтобы я мог их заполнить, а затем раскомментировать строку проверки.
Надеюсь, это кому-нибудь поможет.