ruby-on-rails - 从控制台调用 Rails Controller (传递凭据和/或 session ID)

标签 ruby-on-rails security

app.get '/namespace/controller'

有效,但我怎样才能:

  1. 将凭据传递给安全 Controller 。
  2. 为之前经过身份验证的用户传递 SESSIONID。

最佳答案

app object 会为您处理 session ,因此您无需担心手动处理 session ID。因此,您只需登录,然后访问依赖于正在设置的 session 的其他页面:

app.post app.login_path, :username => "username", :password => "password"
app.get app.other_path

您还可以在任何请求后检查响应和 session ,例如:

app.response.redirect_url
app.session[:user_id]       # assumes your login process uses the `user_id` key in your session

如果需要,您可以创建一个名为 .irbrc 的文件在你的$HOME目录,将其中一些想法与其中的类似内容相结合:

if Rails
  def login
    app.post app.login_path, :username => "username", :password => "password"
    "Logged in with user_id: #{app.session[:user_id]}"
  end
end

然后,在您的 Rails 控制台中,您只需输入 login发出该方法,它将返回显示 user_id 值的字符串 session 元素。

关于ruby-on-rails - 从控制台调用 Rails Controller (传递凭据和/或 session ID),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7084021/

相关文章:

ruby-on-rails - "desc"如何排序group_by?

security - 在另一个协议(protocol)中建立 TLS 隧道

php - 保护对远程 php 脚本的调用

asp.net - AngularJs + ServiceStack 应用程序的安全性

java - 用于通用密码的 Java 中的 Mac OS X 钥匙串(keychain)访问

ruby-on-rails - 使用Rails 2.3.5和cassandra数据库创建应用程序

ruby-on-rails - capybara 通过数据属性找到 anchor 元素

mysql - 从给定编号所属的表中选择所有记录

ruby-on-rails - ActionMailer 实例方法像类方法一样使用

api - 适用于移动和网络的安全API