我想自定义设计 sign_up 以便在 json 注册发布请求之后,我得到一个 json 响应。
因此,在应用程序/控制器中,我创建了 session_controller.rb:
class SessionsController < Devise::SessionsController
def create
self.resource = warden.authenticate!(auth_options)
set_flash_message(:notice, :signed_in) if is_navigational_format?
sign_in(resource_name, resource)
respond_to do |format|
format.html do
respond_with resource, :location => after_sign_in_path_for(resource)
end
format.json do
render :json => { :response => 'ok'}.to_json, :status => :ok
end
end
end
end
在 routes.rb 中:
devise_for(:users, :controllers => { :sessions => "sessions" })
现在我想发出一个 json 发布请求来注册用户并获得 json 响应。我设置了 URL:localhost:3000/users.json
方法:发布
标头:内容类型:应用程序/json
数据:{"user":{"email":"test@gmail.com", "password":"password123", "password_confirmation":"password123"}}
为什么我没有收到正确的 json 响应?我收到:
状态:406 不可接受
X-Runtime:0.102006 日期:2013 年 4 月 2 日星期二 16:03:03 GMT 服务器:WEBrick/1.3.1 (Ruby/1.9.3/2012-02-16) 内容类型:application/json;charset=utf-8 缓存控制:无缓存连接:保持活动内容长度:1 X-Request-Id:24f5d66b1de09560b88e332e06b33c1b X-Ua 兼容:IE=Edge