Php HWIOauthBundle登录后未重定向到所需路径
我是根据互联网上的文件和资源做的。但它不会将用户重定向到指定的Php HWIOauthBundle登录后未重定向到所需路径,php,symfony,fosuserbundle,facebook-oauth,hwioauthbundle,Php,Symfony,Fosuserbundle,Facebook Oauth,Hwioauthbundle,我是根据互联网上的文件和资源做的。但它不会将用户重定向到指定的default\u target\u路径 这是我的security.yml security: encoders: FOS\UserBundle\Model\UserInterface: sha512 role_hierarchy: ROLE_ADMIN: ROLE_USER ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_ADMIN,
default\u target\u路径
这是我的security.yml
security:
encoders:
FOS\UserBundle\Model\UserInterface: sha512
role_hierarchy:
ROLE_ADMIN: ROLE_USER
ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH]
providers:
fos_userbundle:
id: fos_user.user_provider.username
firewalls:
secured_area:
pattern: ^/user
anonymous: ~
oauth:
remember_me: true
resource_owners:
facebook: "/user/login/check-facebook"
# google: "/login/check-google"
# my_custom_provider: "/login/check-custom"
login_path: /user/login
check_path: /user/connect
use_forward: false
failure_path: /user/login
default_target_path: /user/like
provider: fos_userbundle
oauth_user_provider:
# oauth: ~
service: hwi_oauth.user.provider.fosub_bridge
logout: true
access_control:
- { path: ^/user/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/user/connect, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/user(.*), roles: ROLE_USER }
而config.yml
hwi_oauth:
# name of the firewall in which this bundle is active, this setting MUST be set
firewall_name: secured_area
connect:
confirmation: true
resource_owners:
facebook:
type: facebook
client_id: id
client_secret: secret
scope: "email user_birthday"
paths:
email: email
birthday: user_birthday
fosub:
# try 30 times to check if a username is available (foo, foo1, foo2 etc)
username_iterations: 30
# mapping between resource owners (see below) and properties
properties:
facebook: fbID
fos_user:
db_driver: orm # other valid values are 'mongodb', 'couchdb' and 'propel'
firewall_name: main
user_class: Auth\UserBundle\Entity\User
最后它把我引向
http://myurl/user/connect/service/facebook?key=1415715954
并将输出文本显示为标题。成功
我该怎么办 那里有打字错误,只是个简单的错误。正如@StivenLlup在评论中建议的那样 我变了
access_control:
- { path: ^/user/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/user/connect, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/user(.*), roles: ROLE_USER } # changed this
到
如果HWIOauthBundle服务找不到正确的重定向路径,如/user/like
,则会出现此问题
另外,如果指定路径的控制器中存在错误,则正确的重定向也不起作用
在
访问控制中添加正确的路径解决了这个问题 你确定/user/like
与路径匹配吗?那是打字错误。。这样一个错误。我更改了-{path:^/user/,roles:ROLE\u user}
,它完全重定向了。。我是新来的symfony2。
access_control:
- { path: ^/user/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/user/connect, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/user/, roles: ROLE_USER } # to this