草庐IT

handling-json-in-net

全部标签

ruby - 有没有办法将 Ruby Net::HTTP 请求附加到特定的 IP 地址/网络接口(interface)?

我正在寻找一种使用标准Net::HTTP库为每个GET请求使用不同IP地址的方法。服务器有5个IP地址,并假设某些API在达到每个IP的请求限制时阻止访问。所以,唯一的办法就是使用另一台服务器。我在ruby​​文档中找不到任何关于它的信息。例如,curl允许您将其附加到特定的ip地址(在PHP中):$req=curl_init($url)curl_setopt($req,CURLOPT_INTERFACE,'ip.address.goes.here';$result=curl_exec($req);有什么方法可以用Net::HTTP库来实现吗?作为替代方案-CURB(rubycurl绑

Ruby、Tor 和 Net::HTTP::Proxy

如果这是一个愚蠢的疑问,我提前道歉:我想在我的Ruby代码中使用代理来获取一些网页。我想偷偷摸摸!所以我正在使用Tor。我正在运行Tor,我可以像往常一样使用Net::HTTP.get(uri)。但我不知道如何使用Net::HTTP::Proxy来获取uri。我也无法弄清楚使用Tor将如何帮助使我的抓取匿名。非常感谢任何帮助。请不要只添加linktotheruby-docpageforNet::HTTP::Proxy.如果我明白这一点,我就不会在这里问这个了:-)另一种简单的方法是使用SOCKSify,但在这种情况下,我收到以下错误:/usr/lib/ruby/gems/1.9.2-p

ruby-on-rails - 事件模型序列化器 : Adding extra information outside root in ArraySerializer

假设我有一个模型User和一个序列化器UserSerializer,以及一个如下所示的Controller:classUsersController现在如果我访问/users我将收到如下所示的JSON响应:{"users":[{"id":7,"name":"George"},{"id":8,"name":"Dave"}...]}但是,如果我想在JSON响应中包含一些与任何特定用户无关的额外信息怎么办?例如:{"time":"2014-01-0616:52GMT","url":"http://www.example.com","noOfUsers":2,"users":[{"id":7,

ruby-on-rails - 在 Ruby Net::HTTP.start 中为服务调用设置 read_timeout

我想在我的ruby​​代码中覆盖服务调用的默认超时。我打开连接如下。res=Net::HTTP.start(@@task_url.host,@@task_url.port)do|http|http.get("/tasks/#{task_id}")end我尝试如下设置read_timeout时间,但随后我的代码中出现了NoMethodError异常。res=Net::HTTP.start(@@task_url.host,@@task_url.port)res.read_timeout=10resdo|http|http.get("/tasks/#{task_id}")end建议我应该如何

使用JSONObject与JSONArray进行解析json数据

JSONObject:JSONObject只是一种数据结构,可以理解为JSON格式的数据结构(key-value 结构),可以使用put方法给json对象添加元素。JSONObject可以很方便的转换成字符串,也可以很方便的把其他对象转换成JSONObject对象。JSONArray:JSONArray是一个有序的值序列。它的外部文本形式是一个用方括号括起来的字符串,用逗号分隔值。内部表单是具有 索引的对象get和opt用于通过索引访问值的element方法,以及用于添加或替换值的方法在解析接口的时候会遇到内部混乱的接口,在解析这种情况中就会出现这种两种错误:bean类集合字段错误和内部类是汉

ruby-on-rails - rails : use jbuilder template in various controller methods

是否可以在另一个Controller方法中重用jbuilder-template?换句话说:如何明确地说Controller方法使用具体的jbuilder-template? 最佳答案 来自Railsguide.从另一个Controller渲染一个Action的模板。Whatifyouwanttorenderatemplatefromanentirelydifferentcontrollerfromtheonethatcontainstheactioncode?Youcanalsodothatwithrender,whichacce

ruby - 捕捉 Mechanize 404 => Net::HTTPNotFound

我写了一个简单的函数来处理url的获取:deftender_page_geturl,agentsleep(rand(6)+2)beginreturnagent.get(url).parserrescueErrno::ETIMEDOUT,Timeout::Error,Net::HTTPNotFoundEYE.debug"--wintersleep#{url}"puts"-x-#{url}"sleep(300)tender_page_geturl,agentrescue=>eputs"-x-#{url}"EYE.debug"--unknownexception"EYE.debug"#{ur

ruby-on-rails - 无法使用 Windows 在 Rails 中安装 JSON gem

我正在执行捆绑安装,除JSON之外的所有gem工作正常,当它到达JSONgem时我收到此错误。Installingjson(1.6.1)withnativeextensionsc:/Ruby192/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:552:in`rescueinblockinbuild_extensions':ERROR:Failedtobuildgemnativeextension.(Gem::Installer::ExtensionBuildError)c:/Ruby192/bin/ruby.exeextconf.rbch

ruby - RuntimeError: :json 未在 Faraday::Request 上注册

我是ruby​​的新手,我正在尝试执行规范,但收到此错误:RuntimeError:         :jsonisnotregisteredonFaraday::Request我正在尝试使用这个gem:https://github.com/Chicago/windyMacOSX10.7.4Ruby1.9.3,使用RVM 最佳答案 我刚刚在升级Faraday时遇到了这个问题。json请求中间件在0.8中从Faraday中移除。它现在位于faraday_middlewaregem中。您应该geminstallfaraday_middl

ruby-on-rails - rails : How to test if an attribute of a class object is required in the model policy?

简单地说,我有一个模型用户,其中包含名称、电子邮件和评论作为属性。validates_presence_of:namevalidates_presence_of:email所以“姓名”和“电子邮件”是必需的,但不是“评论”。my_user=User.new我想找到一种方法来测试像my_user.name.required?或User.name.required?类似的东西。我的目标是创建一个表单,并根据该项目是否设置为“validates_presence_of”,将特定类动态添加到表单项目span或td我试图搜索它,但没有找到任何相关信息。有没有简单的方法可以做到这一点?谢谢