0

这只是了解如何从操作发送 POST 请求的示例。所以,假设我有一个动作:

def download
  @t = params[:url]
end

我想向另一个动作发送一个 POST 请求,我们称之为doStuffWithPost

def doStuffWithPost
  # Save a row with that POST info, url_column = POST['url']
end

def download
  @t = params[:url]
  # Send POST with POST['url'] = @t
end

在 PHP 中,我可能会使用 CURL,这需要相当多的代码。在 Rails 中是否有一种简单的方法可以做到这一点?如果不是,我应该使用什么来传递一个动作的参数并调用另一个动作?谢谢。

4

2 回答 2

0

无需在此处发布另一个操作,只需遵循 rails 模式即可(如果您曾经搭建过新资源的脚手架,那么您应该以前见过):

def download
  url = Url.new(params[:url])
  if url.save
    redirect_to happy_route
  else
    redirect_to unhappy_route
  end
end
于 2013-09-11T23:06:23.307 回答
0

您可以使用httpparty gem来执行此操作。这是一个发布方法示例 但是,就像其他人所说的那样,如果您没有充分的理由,请不要使用它。例如,如果您需要与 api 交谈,您可以使用它...

于 2013-09-12T03:08:26.283 回答