Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/53.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby-on-Rails上的Curl_Ruby On Rails_Ruby On Rails 3_Curl_Ruby On Rails 3.1 - Fatal编程技术网

Ruby-on-Rails上的Curl

Ruby-on-Rails上的Curl,ruby-on-rails,ruby-on-rails-3,curl,ruby-on-rails-3.1,Ruby On Rails,Ruby On Rails 3,Curl,Ruby On Rails 3.1,如何在RubyonRails上使用curl?像这个 curl -d 'params1[name]=name&params2[email]' 'http://mydomain.com/file.json' 您试图做的最基本的示例是使用如下的反勾号执行此操作 `curl -d 'params1[name]=name&params2[email]' 'http://mydomain.com/file.json'` 但是,这将返回一个字符串,如果您想了解有关服务器回复的任何信息,则必

如何在RubyonRails上使用curl?像这个

curl -d 'params1[name]=name&params2[email]' 'http://mydomain.com/file.json'

您试图做的最基本的示例是使用如下的反勾号执行此操作

`curl -d 'params1[name]=name&params2[email]' 'http://mydomain.com/file.json'`
但是,这将返回一个字符串,如果您想了解有关服务器回复的任何信息,则必须解析该字符串

根据你的情况,我建议使用法拉第

网站上的例子是直截了当的。安装gem,需要它,然后执行以下操作:

conn = Faraday.new(:url => 'http://mydomain.com') do |faraday|
  faraday.request  :url_encoded             # form-encode POST params
  faraday.response :logger                  # log requests to STDOUT
  faraday.adapter  Faraday.default_adapter  # make requests with Net::HTTP
end

conn.post '/file.json', { :params1 => {:name => 'name'}, :params2 => {:email => nil} }
帖子正文将自动转换为url编码的表单字符串。 但是你也可以发布一个字符串

conn.post '/file.json', 'params1[name]=name&params2[email]'

以防您不知道,它需要“net/http”

需要“net/http”
uri=uri.parse(“http://example.org")
#捷径
#response=Net::HTTP.post_form(uri,{“用户[名称]”=>“测试用户名”,“用户[电子邮件]”=>)testemail@yahoo.com"})
#完全控制
http=Net::http.new(uri.host,uri.port)
request=Net::HTTP::Post.new(uri.request\u uri)
请求。设置表单数据({“用户[名称]”=>“测试用户名”,“用户[电子邮件]”=>)testemail@yahoo.com"})
response=http.request(请求)
render:json=>response.body

希望它能帮助其他人……)

下面是ruby的net/http转换器:

例如,
curl-v www.google.com
命令在Ruby中相当于:

require 'net/http'
require 'uri'

uri = URI.parse("http://www.google.com")
response = Net::HTTP.get_response(uri)

# response.code
# response.body

你对使用cUrl有特殊要求吗,因为我认为你可以使用ruby HTTP post方法检查这个你应该使用
Net::HTTP
@shweta你能给我举个例子吗?未初始化的常量TestController::Faraday我成功安装了gem。。有什么问题吗?你把Gem添加到Gem文件了吗?然后运行
bundle install
,通常那些不断出现的错误意味着它还没有被加载。是的,我已经完成了。你能发布一个你把法拉第代码放在哪里的粘贴()吗?