我试图使用REST客户端宝石做我的应用程序,它使用Authlogic来验证用户的几个小任务。从静止客户端的API,我看到一个可以发布所需的数据登录过程是这样的:

require 'rest_client'
RestClient.post "http://127.0.0.1:3000/user_sessions", {:user_session => {:username => 'myusername', :password => 'mypassword'}}.to_json, :content_type => :json, :accept => :json

看着我的开发日志中,我看到的应用已经登录了我正确重定向我到用户的私人页面。然而,当我然后试图“刷新”私有页,

RestClient.get 'http://127.0.0.1:3000/users/1'

我又带回登录页面,如果我没有登录。所以我在想,如果这与一种叫做会话或饼干呢?

我用卷曲成功地重现这种情况下,我在那里使用开关“-c cookie.txt”保存关于已经已经登录我的信息,并使用开关“-b cookie.txt”每次调用告诉我认证岬远程服务器。在主题公园或在那里他们知道你付出了酒吧去时,我能理解这个概念就像手腕上的邮票。但是我觉得没有提的RESTClient实现这样的机制。任何帮助将是巨大的,解决这个问题。我不介意尝试其他HTTP客户端,无论是。

此致

有帮助吗?

解决方案

如果您使用Authlogic,你可以使用,而不是用户名/密码一次性使用的令牌。单次使用的令牌是专门为像什么,它听起来就像你在这里所做的API调用。

请参阅:的rdocs此处

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top