草庐IT

前端应该懂的HTTP和HTTPS知识

全部标签

ruby-on-rails - 进行 HTTP 调用时,Ruby 中的频繁 SystemExit

我有一个RubyonRails网站,可以对外部Web服务进行HTTP调用。我大约每天收到一次SystemExit(下面的堆栈跟踪)错误电子邮件,其中调用服务失败。如果稍后我在我的网站上尝试完全相同的查询,它就可以正常工作。自该网站上线以来,这种情况一直在发生,我一直没能找到导致它的原因。Ruby是1.8.6版,rails是1.2.6版。还有人遇到这个问题吗?这是错误和堆栈跟踪。ASystemExitoccurred/usr/local/lib/ruby/gems/1.8/gems/rails-1.2.6/lib/fcgi_handler.rb:116:inexit'/usr/local

ruby - 我怎样才能通过 "http://gems.rubyforge.org/does not appear to be a repository"错误消息

问题828421提出了类似的问题,但只收到一个真正的答案(更新ruby​​gems)并且该尝试导致相同的错误。Windows上的Ruby版本1.9.1.p243。包括Gem,版本1.3.5。以前从未安装过任何gem;从来没有为这个Ruby做过任何特殊的配置。Ruby本身可以工作,irb也可以,“gem”可以运行但不能安装(可能还有其他操作)。试过这个(来自一本书):geminstallrspec明白了:ERROR:http://gems.rubyforge.org/doesnotappeartobearepositoryERROR:Whileexecutinggem...(Gem::R

ruby - 如何在 Heroku 上托管的 Ruby/Sinatra 应用程序中设置 HTTP header ?

我有一个基于Ruby和Sinatra的工作应用程序部署在Heroku上。我想利用Heroku上可用的HTTP缓存,它使用Varnish。我不确定设置header的最佳方式是什么,以及正确的语法。对最佳方法和语法有什么想法吗?beforedoheaders"Content-Type"=>"text/html;charset=utf8"endget'/'doheaders['Cache-Control']='public,max-age=600'#SOMESTUFFHEREhaml:home,{:layout=>:layout_minfooter}end 最佳答

ruby - 为什么要在框架 Web 服务器前面使用 http 服务器?

sinatra(ruby)、play(scala)、lift(scala)等Web应用程序框架会生成一个监听特定端口的Web服务器。我知道有一些原因,例如安全性、集群以及在某些情况下的性能,可能会导致我在我的Web应用程序之前使用ApacheWeb服务器。根据您的经验,您有什么原因吗? 最佳答案 任何网络应用程序的一部分都具有完全标准化和商品化的功能。nginx或apache等成熟的Web服务器可以执行以下操作。它们可以以更正确、更高效、更稳定、更安全、系统管理员更熟悉并且比您可以在应用程序服务器中重写的任何方式更容易配置的方式来执

ruby - 从 Ruby HTTP 请求中获取响应 header

我正在使用Net::HTTP通过Ruby发出HTTP请求,但我不知道如何获取所有响应header。我尝试了response.header和response.headers但没有任何效果。 最佳答案 响应对象实际上包含标题。有关详细信息,请参阅“Net::HTTPResponse”。你可以这样做:response['Cache-Control']您还可以在响应对象上调用each_header或each以遍历header。如果您真的想要响应对象之外的header,请调用response.to_hash

ruby - 如何通过 HTTP 将图像文件下载到临时文件中?

我找到了goodexamplesNET::HTTP下载图像文件,我找到了goodexamples创建一个临时文件。但我不知道如何一起使用这些库。即,如何将临时文件的创建用于此代码以下载二进制文件?require'net/http'Net::HTTP.start("somedomain.net/")do|http|resp=http.get("/flv/sample/sample.flv")open("sample.flv","wb")do|file|file.write(resp.body)endendputs"Done." 最佳答案

ruby - 我应该如何为 Ruby 关键字参数提供 YARD/RDoc 文档?

对于基本的Ruby方法,我会为以下格式的参数提供YARD样式文档。#@paramquery[String]Thesearchstringtoquery.#@paramoptions[Hash]Optionalsearchpreferences.defsearch(query,options={})#...end在Ruby2.0中,现在可以使用关键字参数。但是,我不确定如何根据YARD文档处理该问题。defsearch(query,exact_match:false,results_per_page:10)#...end在第二种情况下,我将如何记录exact_match和results_

ruby-on-rails - 什么应该从 Ruby on Rails 的公共(public)源代码控制中删除?

我一直在网上搜索,但找不到关于从新的公共(public)Rails应用程序中排除什么的任何好的/最近的例子。我希望在GitHub上开源我的应用程序,并且想知道应从源代码管理中删除哪些类型的数据。据我所知,应该有一个包含私有(private)信息的config/config.yml文件。我一直在查看其他文件,它看起来像config/database.yml、config/intializers/secret_token.rb和config/initializers/session_store.rb也应该被排除在外?最好的做法是分别排除所有这些文件吗?或者有没有办法在config/conf

ruby-on-rails - 为什么我们应该避免在 Rails 中使用类变量@@?

为什么我们应该避免在Rails中使用类变量@@?是否存在任何安全漏洞。请回答,因为我是Rails的新手。我经常使用实例变量@variable_name。我试过一次@@variable_name。我只知道类变量是,类变量可以在对象之间共享但我真的很想知道为什么我们应该避免在rails中使用类变量@@? 最佳答案 仅仅是因为它们不是线程安全的。许多支持rails=capable的服务器都是多线程的。这意味着在任何给定时间可能有多个正在运行的应用程序实例,并且您的一个用户的任何请求都将被任意分配给其中一个。类变量不在进程之间共享,因此您的

ruby-on-rails - 测试时我应该在 Factory girl 中 stub 模型还是在规范文件中 stub ?

几乎我遇到的每一个规范文件我最终都会写这样的东西:before:eachdo@cimg=Factory.build:cimg_valid@cimg.stub(:validate_img).and_returntrue@cimg.stub(:validate_img_url).and_returntrue@cimg.stub(:save_images).and_returntrue@cimg.stub(:process_image).and_returntrue@cimg.stub(:img).and_returntrueend我的意思是,我从Factory.build获得的模型是完全有