dsqpx86002 2013-11-06 03:19
浏览 42
已采纳

HWIOAuthBundle不会重定向到Twitter登录

I am settting up FOSUserBundle and HWIOAuthBundle("0.3.*@dev") to work with facebook and twitter.

I followed all documentation steps and facebook is working well but twitter doesn't work correctly. When I click to connect with twitter, it just redirects to my app login page.

Here are my configs:

routing.yml:

hwi_oauth_redirect:
    resource: "@HWIOAuthBundle/Resources/config/routing/redirect.xml"
    prefix:   /connect

facebook_login:
    pattern: /login/check-facebook

twitter_login:
    pattern: /login/check-twitter

security.yml:

providers:
    fos_userbundle:
        id: fos_user.user_provider.username_email

firewalls:
    dev:
        pattern:  ^/(_(profiler|wdt)|css|images|js)/
        security: false
    main:
        pattern: ^/
        oauth:
            resource_owners:
                facebook: "/login/check-facebook"
                twitter: "/login/check-twitter"
            login_path: /login
            failure_path: /login
            oauth_user_provider:
                service: hwi_oauth.user.provider.fosub_bridge
        form_login:
            provider: fos_userbundle
            csrf_provider: form.csrf_provider
        logout:       true
        anonymous:    true

access_control:
    - { path: ^/connect, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/login, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/admin, role: ROLE_ADMIN }
    - { path: ^/panel, role: ROLE_USER }

config.yml:

hwi_oauth:
    firewall_name: main
    resource_owners:
        facebook:
            type:               facebook
            client_id:          %oauth.facebook.client_id% 
            client_secret:      %oauth.facebook.client_secret% 
            scope:              "email"
            options:
                display: popup
        twitter:
            type:                twitter
            client_id:           %oauth.twitter.client_id% 
            client_secret:       %oauth.twitter.client_secret%
            scope:               ""
    fosub:
        username_iterations: 5
        properties:
            facebook: facebookId
            twitter: twitterId
parameters:
    hwi_oauth.user.provider.fosub_bridge.class: MyProject\UserBundle\Security\User\Provider\OauthProvider

Does anyone knows what I am missing?

  • 写回答

1条回答 默认 最新

  • dongtiao2066 2013-11-06 17:16
    关注

    The problem was the twitter callback url which was not configured in the twitter app config. After setting one callback url, it worked correctly.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 公交车和无人机协同运输
  • ¥15 stm32代码移植没反应
  • ¥15 matlab基于pde算法图像修复,为什么只能对示例图像有效
  • ¥100 连续两帧图像高速减法
  • ¥15 组策略中的计算机配置策略无法下发
  • ¥15 如何绘制动力学系统的相图
  • ¥15 对接wps接口实现获取元数据
  • ¥20 给自己本科IT专业毕业的妹m找个实习工作
  • ¥15 用友U8:向一个无法连接的网络尝试了一个套接字操作,如何解决?
  • ¥30 我的代码按理说完成了模型的搭建、训练、验证测试等工作(标签-网络|关键词-变化检测)