加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Ruby:阻止HTTP.new.start和动态HTTP(S)

发布时间:2020-12-16 19:34:43 所属栏目:百科 来源:网络整理
导读:我需要一个阻止HTTP请求的应用程序,所以我不得不添加几行代码,如果uri.scheme ==’https’,那么唯一我想不到的就是语句; http.use_ssl = true有没有办法在当前语句中设置http / https: Net::HTTP.new(uri.host,uri.port).start do |http| # Causes and IOEr
我需要一个阻止HTTP请求的应用程序,所以我不得不添加几行代码,如果uri.scheme ==’https’,那么唯一我想不到的就是语句; http.use_ssl = true有没有办法在当前语句中设置http / https:
Net::HTTP.new(uri.host,uri.port).start do |http|

  # Causes and IOError... 
  if uri.scheme == 'https'
    http.use_ssl = true
  end

  request = Net::HTTP::Get.new(uri.request_uri)
  http.request(request)
end

补充:IOError:use_ssl值已更改,但会话已启动

解决方法

按照 the documentation,您不能在启动会话后(即启动后)调用use_ssl =.你必须先设置它,例如:
http = Net::HTTP.new(uri.host,uri.port)
http.use_ssl = true if uri.scheme == 'https'

http.start do |h|
  h.request Net::HTTP::Get.new(uri.request_uri)
end

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读