草庐IT

http-requeset

全部标签

ruby - 如何通过 http 使用 Ruby 访问 URL 并读取输出?

到目前为止,我已经能够将它们拼接在一起:)beginopen("http://www.somemain.com/"+path+"/"+blah)rescueOpenURI::HTTPError@failure+=painting.permalinkelse@success+=painting.permalinkend但是我如何读取我要调用的服务的输出呢? 最佳答案 Open-URI扩展了open,因此您将获得一种返回的IO流:open('http://www.example.com')#=>#你必须阅读它才能获得内容:open('h

ruby - 停止 ruby​​ http 请求修改 header 名称

我正在用ruby​​做一个http请求:http=Net::HTTP.new(uri.host,uri.port)req=Net::HTTP::Post.new(uri.path)req.body=payloadreq['customeheader']='xxxxxxxxx'http.set_debug_output$stdout我打开了调试,当请求被发布时,我可以看到标题被发布为:Customheader:xxxxxxxxx有没有办法阻止这个,我发布到的第三方服务器给出了一个错误,因为header名称不正确-它期待customheader: 最佳答案

ruby-on-rails - 无法连接到 chromedriver http://127.0.0.1:9515 (Selenium::WebDriver::Error::WebDriverError)

我已经从http://chromedriver.storage.googleapis.com/index.html安装了chrome-driver|而且我还安装了Google-chrome浏览器。我想使用chrome浏览器而不是Firefox浏览器运行cucumber测试用例,但我遇到了这个错误。任何帮助表示赞赏。谢谢 最佳答案 我遇到这个问题是因为rbenvshim覆盖了路径。值得检查whichchromedriver指向的位置。对我来说,解决方法是:gemuninstallchromedriver-helper和brewinst

ruby - 获取 Ruby Net::HTTP POST 的上传进度

我一直在搜索net/http代码,但还没有找到解决方案。我需要执行一个多部分POST请求,我已经弄清楚了,但是在上传中定期注入(inject)一个回调真的很好,这样我就可以增加一个进度条。有谁知道一种方法可以让代码执行HTTPpost期间发送的每X个字节? 最佳答案 看起来您没有使用Rails,但我认为最简单的方法是从客户端进行。在浏览器设置中,您可以使用Flash(SWFUpload)或仅使用新的XMLHttpRequest内容向新浏览器提供进度条(上传在旧浏览器中仍然有效...只是没有进度条)。它的工作原理与您描述的略有不同,但

ruby-on-rails - redirect_to 自定义 http header

在我当前的项目中,在为http基本身份验证重定向时需要设置自定义httpheader变量。我可以为自定义header指示redirect_to吗?谢谢。 最佳答案 Rails允许您在重定向时添加自定义header。在Railsguides中进行了讨论.10.2.1SettingCustomHeadersIfyouwanttosetcustomheadersforaresponsethenresponse.headersistheplacetodoit.Theheadersattributeisahashwhichmapsheader

ruby - Faye 在使用 https rails app 和 http faye app 时不工作

我有Rails应用程序,并使用apache和unicorn部署在AWSEC2中。在此应用程序中,我将faye用于消息传递模块。它在http应用程序中运行良好,但在将https(ssl)用于Web应用程序和将http用于Faye应用程序时,Faye无法正常工作。在这种情况下,我们真的需要两个应用程序(网络应用程序和faye应用程序)都使用https吗?请告诉我。错误:页面位于https://xxxx.xxxx已通过HTTPS加载,但请求了不安全的脚本“http://xxxxxx:9292/faye.js” 最佳答案 是的,您应该通过H

ruby-on-rails - Rails 3、HTTP 扩展(WebDAV)和 Rack App 安装

1下面更多是给codedevs指出rails的一个可以被认为是缺陷的问题。2我还征求了一些更了解的人的意见。我想通过Warden身份验证将WebDAV添加到我的Rails3应用程序。我的warden中间件是通过Devise注入(inject)的。http://github.com/chrisroberts/dav4rackhttp://github.com/hassox/wardenhttp://github.com/plataformatec/devise我无法从Rails应用程序(路由)内部安装DAV4Rack处理程序,如下所示:#inconfig/routes.rbmountDA

ruby-on-rails - rails : How to to download a file from a http and save it into database

我想创建一个RailsController,从网上下载一系列jpg文件,并直接将它们作为二进制文件写入数据库(我不是要上传表格)关于如何做到这一点的任何线索?谢谢编辑:这是我已经使用attachment-fugem编写的一些代码:http=Net::HTTP.new('awebsite',443)http.use_ssl=truehttp.verify_mode=OpenSSL::SSL::VERIFY_NONEhttp.start(){|http|req=Net::HTTP::Get.new("image.jpg")req.basic_authlogin,passwordrespon

Ruby Open-URI 库在 404 HTTP 错误代码中中止

我使用OpenURI库。object=open("http://example.com")如果http://example.com服务器代码响应等于200我的程序按预期运行。但是如果http://example.com服务器响应代码等于400(或其他),然后脚本中止并显示OpenURI::HTTPError:404NotFound。如果我使用“开始救援”构造并处理“HTTPError异常”,我可以避免这种情况。这是正确的方法吗?我应该使用Net/Http库而不是OpenURI来处理所有情况吗? 最佳答案 挽救OpenURI::HTT

ruby-on-rails - 为什么 Rails Gemfile 默认为 https 而 http 使 bundler 更快?

gem文件中Rails的默认gems源是:source'https://rubygems.org'将其更改为source'http://rubygems.org'使bundle安装速度更快,因此我试图了解将https设为默认设置的决定背后的原因。有什么我需要注意的吗? 最佳答案 表格here:SwitchingtoHTTPisdangerous.ItopensyoutoMITMattacks.SwitchingtoHTTPallowshostilepartiestoreplacegemcontentswithmaliciouscon