从rails执行CURL命令

时间:2014-04-25 11:13:07

标签: ruby-on-rails ruby-on-rails-3 curl

您好我需要将我的rails 3.2应用程序与pivotaltracker集成到CRUD项目和故事中。在他们的文档pivotal tracker api link中,他们提供了一些使用CURL创建准备故事的命令。我想知道如何在rails中使用这些命令。

创建故事的示例命令:

export TOKEN='your Pivotal Tracker API token'
export PROJECT_ID=99
curl -X POST -H "Content-Type: application/json" -H "X-TrackerToken: $TOKEN" -d '{"current_state":"started","name":"Exhaust ports are ray shielded","estimate":1}' "https://www.pivotaltracker.com/services/v5/projects/$PROJECT_ID/stories"

我怎么能在rails中实现这个目标?

2 个答案:

答案 0 :(得分:1)

Net :: HTTP ruby​​模块可以做同样的事情。 http://www.ruby-doc.org/stdlib-2.1.1/libdoc/net/http/rdoc/Net/HTTP.html

但是如果你想像curl那样执行shell commad试试Kernel#system http://www.ruby-doc.org/core-2.1.1/Kernel.html

答案 1 :(得分:1)

请尝试这样做,而不是使用直接curl命令。

$ gem install curb

然后你可以

Curl::Easy.perform("http://www.google.co.uk") do |curl| 
 curl.headers["User-Agent"] = "myapp-0.0"
 curl.verbose = true
end

请参阅documentationGithub