草庐IT

ruby-on-rails - 如何解析 url 以获取基本 url? -- rails 3.1

我怎样才能像这样解析urlhttp://www.1800contacts.com/productlist.aspx?dl=P&source=cj&ac=8.2.0007只得到http://www.1800contacts.com?附言。有些url有子域等,所以我不能在这里使用正则表达式。 最佳答案 尝试使用“uri”库:require'uri'address='http://www.1800contacts.com/productlist.aspx?dl=P&source=cj&ac=8.2.0007'uri=URI.parse(a

ruby-on-rails - Ruby on Rails - 无法加载此类文件 -- net/ssh

这几天我一直在努力......当我尝试从View调用助手中的方法来执行ssh时,它会抛出该错误。"Thiserroroccurredwhileloadingthefollowingfiles:net/ssh"但是当我将代码复制到test.rb文件并从提示符rubytest.rb执行它时,它可以完美连接。可能是什么问题?我在另一台计算机上试过,结果相同。非常感谢,这就像是我完成项目之前的最后一步!问候,application_helper.rb:moduleApplicationHelperdeftitle(value)unlessvalue.nil?@title="#{value}|E

Ruby Net::FTP 进度条

有谁知道在下载文件时从ruby​​的Net::FTP库获取状态更新的方法吗?我正在尝试实现一个Web界面,该界面显示从远程FTP服务器下载文件时剩余百分比的进度条。 最佳答案 供将来引用-我偶然发现了一个解决方案:filesize=ftp.size(filename)transferred=0p"Beginningdownload,filesize:#{filesize}"ftp.getbinaryfile(filename,"#{SOURCE_IMPORT_DIRECTORY}/#{filename}",1024){|data|t

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 - 在 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建议我应该如何

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 - 通过 Rack::Auth::Basic 有选择地允许某些 url

我已经建立了一个我希望得到最低限度安全保护的博客(即,我只是想将我不认识的随机人员拒之门外,我并没有尝试实现类似NSA的安全措施)。我正在使用toto使用Rack::Auth::Basic来“保护”站点。我想通过index.xml以便博客读者能够在不处理密码的情况下阅读提要(是的,我知道这是我的“安全性”中的一个大漏洞).如何让Rack::Auth::Basic通过这个url?这就是我向网站添加基本身份验证的方式:useRack::Auth::Basic,"blog"do|username,password|[username,password]==['generic','stupid

ruby - 如何在 Heroku 上使用 Ruby Rack 为静态站点设置 URL

我的网站是here.它曾经是一个Django驱动的博客。但是我不再更新它所以我只是想把它变成一个静态的HTML站点。我得到了它并使用RubyRack将它移到了Heroku。但是每个URL都解析为主页。这是因为我的config.ru文件:useRack::Static,:urls=>["/media/images","/media/js","/media/css"],:root=>"public"runlambda{|env|[200,{'Content-Type'=>'text/html','Cache-Control'=>'public,max-age=86400'},File.op

ruby-on-rails - 使用 Ruby/Rails 进行 base 64 URL 解码?

我正在使用FacebookAPI和RubyonRails,我正在尝试解析返回的JSON。我遇到的问题是Facebookbase64URL对其数据进行编码。Ruby没有内置的base64URL解码。关于base64编码和base64URL编码的区别,seewikipedia.我如何使用Ruby/Rails对此进行解码?编辑:因为有些人阅读有困难——base64URL与base64不同 最佳答案 Dmitry的回答是正确的。它说明了在字符串解码之前必须出现的“=”符号填充。我一直收到格式错误的JSON,最后发现这是由于填充造成的。Rea