分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 教程案例

Ruby http/net 中连接超时问题

发布时间:2023-09-06 01:25责任编辑:胡小海关键词:http

下面在调用币安的接口时,经常会卡住,设置连接超时也不会抛出异常,代码如下(默认连接超时为nil, 参考:https://github.com/ruby/ruby/pull/269):

require ‘net/http‘require ‘json‘require ‘byebug‘uri = URI(‘https://www.binance.com/api/v1/ticker/24hr?symbol=EOSBTC‘)req = Net::HTTP::Get.new(uri)loop do ?res = Net::HTTP.start(uri.hostname, uri.port, :use_ssl => uri.scheme == ‘https‘) do |http| ???http.open_timeout = 1 ???http.request(req) ?end ?puts "#{JSON.parse res.body}" ?puts "http request complete." ?sleep 1end

不知道为什么,用 http.open_timeout = 1 这种设置不奏效,改为在start的options中配置即可则会超时抛出异常,如下:

 ?res = Net::HTTP.start(uri.hostname, uri.port, :use_ssl => uri.scheme == ‘https‘, :open_timeout => 1) do |http| ???http.request(req) ?end

Ruby http/net 中连接超时问题

原文地址:http://www.cnblogs.com/zhangyanpei/p/7840536.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved