如何在设计处理 HTML 和 XML 请求时禁用并仅保留 JSON?
问问题
3535 次
3 回答
8
我想你可以覆盖设计控制器:
在controllers/devise_overrides/sessions_controller.rb
:
class DeviseOverrides::SessionsController < Devise::SessionsController
respond_to :json
respond_to :html, only: []
respond_to :xml, only: []
end
在routes.rb
:
devise_for :users, controllers: {
sessions: "devise_overrides/sessions"
}
于 2013-05-02T13:51:29.247 回答
2
您必须clear_respond_to
(清除之前定义的所有类型,如 HTML 或 XML),然后respond_to :json
在覆盖控制器中...
配置/路由.rb
devise_for :users , controllers: {
sessions: 'users/sessions',
registrations: 'users/registrations'
}
控制器/用户/会话
class Users::SessionsController < Devise::SessionsController
clear_respond_to
respond_to :json
end
控制器/用户/注册
class Users::/RegistrationsController < Devise::RegistrationsController
clear_respond_to
respond_to :json
end
它适用于我的 Rails 5.2!
于 2019-01-26T20:20:59.220 回答
1
module DeviseOverrides
class SessionsController < Devise::SessionsController
# Respond only to JSON calls
clear_respond_to
respond_to :json
end
end
于 2016-01-26T12:27:00.247 回答