0

我遇到了一个奇怪的问题,我的项目有一个登录页面,可以正常工作,但我必须使用 http shell 命令来使用这个登录页面,例如:

curl -v http://google.com/

我的问题是,如何识别从源代码发送请求的 URL?按照源代码:

def create
  if request.post?
    if session[:account] = Account.authenticate(params[:account][:username], params[:account][:password])
      flash[:message] = "Login successful"
      redirect_to :controller => "items", :action => "index"
    else
      flash[:notice] = "Login unsuccessful"
      redirect_to :controller => "login", :action => "create"
    end
  end
end

如果我尝试发送这样的请求:

curl -d "account(username)=guilherme&account(password)=123456" http://localhost:3000/login

我有这样的回应:

当你没想到时,你有一个 nil 对象!您可能期望有一个 Array 的实例。评估 nil 时发生错误。[]

4

1 回答 1

0

我不太明白你的问题,但我认为你发布的卷曲线应该使用括号而不是括号

curl -d "account[username]=guilherme&account[password]=123456" http://localhost:3000/login

我在问自己你打算用这个做什么,因为你不能用这种方法保留会话 cookie?!

于 2012-02-14T19:46:29.360 回答