トークンを使用してユーザーを認証する Rails アプリケーションがあります。現在、トークンをパラメーターとして渡しています。これを変更したいと思います。HTMLヘッダーを介して渡すことは可能だと思います。使い方がわかりませんauthenticate_or_request_with_http_token do |token, options|
。私の Rails アプリは、実際には iPhone クライアントのサーバーです。私が理解していないことは次のとおりです。
ノンスであることはわかって
options
いますが、クライアントとサーバーの間でどのように機能しますか?サーバーコードでこれを実際に使用するにはどうすればよいですか。
ヘッダーでトークンを確認するために使用できます
authenticate_or_request_with_http_token do |token, options|
が、セッションが正常に作成されたら、ヘッダーにトークンを挿入するにはどうすればよいですか。
ここに私のサーバーセッションコントローラーがあります:
def create
if @user && @user.authenticate(params[:password])
# @token = @user.auth_token
@user.auth_token = SecureRandom.hex
@user.save
respond_to do |format|
format.json {render :json => {:status => "200", :message => "Logged in successfully", :auth_token => @user.auth_token}}
end
else
respond_to do |format|
format.json {render :json => {:status => "401", :message => "wrong credentials"}}
end
end
end
def destroy
if(@user)
@user.auth_token = ""
@user.save
respond_to do |format|
format.json {render :json => {:status => "200", :message => "logged out successfully"}}
end
else
respond_to do |format|
format.json {render :json => {:status => "401", :message => "No User"}}
end
end
end
def user
@user = User.find_by_auth_token(params[:auth_token])
end