2
我正在開發一個使用Rails 3的API。我已經完成了自己的身份驗證邏輯,並且使用了名爲authenticate_user的before_filter!檢查用戶是否已登錄。Before_filter身份驗證功能
在此函數中,我檢查當前用戶會話是否處於活動狀態。如果我什麼都不做,但是如果沒有活動會話,我想停止使用其他功能/資源,然後將錯誤返回給用戶未登錄的調用應用程序。
我的問題是:
如何在我的身份驗證功能中「停止」請求,如果沒有當前會話。我不想重定向用戶,只顯示錯誤消息。
如何顯示將被髮送回調用應用程序的錯誤消息?如果我能用JSON「回答」(如果可能的話)是最好的。
這是我現在的代碼。
def authenticate_user!
unless current_user
if params[:token]
user = User.authenticate_token(params[:token])
if user
session[:user_id] = user.id
else
SEND BACK SOMETHING HERE AND STOP THE PROCESS?
end
end
end
end
感謝所有輸入!