我正在使用客户端流程实现facebook身份验证。
之后,我想使用cookie策略在后端与Omniauth框架集成。
问题是在登录facebook并尝试调用Omniauth回调后,在预检请求(OPTIONS
)上,我的全局选项路由无法识别,后端也不会返回任何CORS头。
路线定义:
match '*path', to: 'application#handle_options_request', constraints: {:method => 'OPTIONS'}
调用回调时,它永远不会传递application#handle_options_request
:
[2014-09-02 18:02:25] INFO Rails : Started OPTIONS "/users/auth/facebook" for 127.0.0.1 at 2014-09-02 18:02:25 +0100
所有其他基于OPTION
请求的请求都已正常路由,但上述情况并非如此。
有人已经遇到过这个问题吗?
====
Omniauth路线
$ bundle exec rake routes
user_omniauth_authorize GET|POST /users/auth/:provider(.:format) authentications#passthru {:provider=>/facebook|google_oauth2|twitter/}
user_omniauth_callback GET|POST /users/auth/:action/callback(.:format) authentications#(?-mix:facebook|google_oauth2|twitter)