我有一个使用Devise使用RUBY来处理身份验证的API。
我也在使用:确认财产,但我在收到回复方面遇到了一些麻烦。
我正在做一个GET请求,将验证令牌发送到设计/确认#show,这很好,因为之后我尝试进入我的应用程序,我可以。问题是,当我发送该请求时,我收到了响应错误,因为我没有任何重定向路由,因为我没有使用任何视图(是一个API)
我尝试从设计创建一个新类:
class ConfirmUserController < Devise::ConfirmationsController
private
def after_confirmation_path_for(resource_name, resource)
respond_to do |format|
format.json { render json: {msg: 'success'} }
end
end
end
基本上我需要的是当用户确认他们的帐户时,api应该向我的应用发送“成功”消息。我不想重定向到另一个视图。
我该怎么做?
答案 0 :(得分:0)
看一下the source应该解释为什么这不起作用。您的respond_to
区块位置错误,因此无效。
您要覆盖应返回路径的after_confirmation_path_for
,但respond_with_navigational
中的#show
是redirect_to
的参数,无论返回什么内容,都会重定向。
由于您已经拥有自定义控制器,我建议您也覆盖#show
操作,并直接从那里使用JSON进行响应。