【发布时间】:2015-08-01 19:22:05
【问题描述】:
你好,我正在使用https://github.com/adelevie/parse-ruby-client/tree/v0.3.0 gem,并且没有关于如何在登录后结束会话的文档。所以我很好奇如何做到这一点。
【问题讨论】:
标签: ruby-on-rails ruby rest parse-platform
你好,我正在使用https://github.com/adelevie/parse-ruby-client/tree/v0.3.0 gem,并且没有关于如何在登录后结束会话的文档。所以我很好奇如何做到这一点。
【问题讨论】:
标签: ruby-on-rails ruby rest parse-platform
看起来 gem 不支持直接注销。您必须像https://parse.com/docs/rest/guide/#sessions-deleting-sessions 中所述手动进行注销调用
【讨论】:
parse-ruby-client gem 的User 类中似乎没有logout 的任何方法
如果你愿意,你可以写一个像下面这样的方法,它会注销当前登录的用户。
def logout
Parse.client.post("https://api.parse.com/1/logout", {})
rescue Parse::ParseProtocolError
puts "Invalid session"
end
您还可以选择通过在您的一个 ruby 文件中执行类似操作来扩展 gem 提供的类
Parse::Protocol::LOGOUT_URI = "https://api.parse.com/1/logout"
module Parse
class User
def self.logout
Parse.client.post(Parse::Protocol::LOGOUT_URI, {})
rescue Parse::ParseProtocolError => e
Parse.client.logger.error e.message
end
end
end
之后,您应该可以调用如下方法:
Parse::User.logout
【讨论】:
def logout.. and i hit localhost:3000/login/logout 并得到了回复:209: invalid session token
log_in 中定义了logout 方法,我认为您需要将其取出并使其成为一个独立的方法。在您的log_in 中,您无需在异常时调用logout
def logout 下注销,它不在log_in 下