У меня проблема, когда я переключаю язык на своем сайте, и я пользуюсь в Facebook с помощью HWIOAuthBundle
, я всегда получаю перенаправление к языку по умолчанию, что я установил в config.yml
. (в моем случае: "ан")Локальная резервная копия значения по умолчанию после входа в Facebook с использованием HWIOAuthBundle
routing.yml
# Facebook Connect
hwi_oauth_security:
resource: "@HWIOAuthBundle/Resources/config/routing/login.xml"
prefix: /{_locale}/login
defaults: { _locale: en }
requirements:
_locale: en|de
hwi_oauth_connect:
resource: "@HWIOAuthBundle/Resources/config/routing/connect.xml"
prefix: /{_locale}/login
defaults: { _locale: en }
requirements:
_locale: en|de
hwi_oauth_redirect:
resource: "@HWIOAuthBundle/Resources/config/routing/redirect.xml"
prefix: /{_locale}/login
defaults: { _locale: en }
requirements:
_locale: en|de
facebook_login:
path: /{_locale}/login/check-facebook
defaults: { _locale: en }
requirements:
_locale: en|de
# Site Routing #
homepage:
path: /{_locale}
defaults: { _controller: MyPageBundle:Homepage:index, _locale: en }
requirements:
_locale: en|de
настройки OAuth брандмауэра в security.xml
firewalls:
main:
oauth:
resource_owners:
facebook: "/%locale%/login/check-facebook"
login_path: fos_user_security_login
failure_path: fos_user_security_login
oauth_user_provider:
service: hwi_oauth_user_provider
always_use_default_target_path: true
default_target_path: "/%locale%"
После этого, когда я открываю mysite.com/en/login/facebook
, я успешно войдите в мою учетную запись на facebook и перейдите по следующей ссылке: mysite.com/en#_=_
Но когда я открою mysite.com/de/login/facebook
, я получаю перенаправление на тот же URL-адрес, что и в предыдущем случае. Кажется, что локаль не проходит после перенаправления и не возвращается к языку по умолчанию.
В каждом другом случае язык работает нормально. Например, я использую FOSUserBundle, и после входа в систему, выхода из системы или регистрации я получаю перенаправление с правильной локалью каждый раз.
Может ли кто-нибудь помочь мне решить эту проблему? Заранее спасибо!