gpt4 book ai didi

ruby - ECONNRESET (Whois::ConnectionError) - 尝试在 Ruby 中查询 Whois 时出错

转载 作者:数据小太阳 更新时间:2023-10-29 07:13:57 25 4
gpt4 key购买 nike

我正在用 Ruby 编写一个简单的程序来检查域列表是否被占用。基本上它循环遍历列表,并使用以下函数进行检查。

require 'rubygems'
require 'whois'

def check_domain(domain)
c = Whois::Client.new
c.query("google.com").available?
end

程序不断出错(即使我在 google.com 中进行硬编码),并打印以下消息。鉴于该程序非常简单,我已经没有什么想法了 - 有什么建议吗?

/Library/Ruby/Gems/1.8/gems/whois-2.0.2/lib/whois/server/adapters/base.rb:165:in `query_the_socket': Errno::ECONNRESET: Connection reset by peer (Whois::ConnectionError)
from /Library/Ruby/Gems/1.8/gems/whois-2.0.2/lib/whois/server/adapters/verisign.rb:41:in `request'
from /Library/Ruby/Gems/1.8/gems/whois-2.0.2/lib/whois/server/adapters/base.rb:113:in `query'
from /Library/Ruby/Gems/1.8/gems/whois-2.0.2/lib/whois/server/adapters/base.rb:150:in `buffer_start'
from /Library/Ruby/Gems/1.8/gems/whois-2.0.2/lib/whois/server/adapters/base.rb:112:in `query'
from /Library/Ruby/Gems/1.8/gems/whois-2.0.2/lib/whois/client.rb:90:in `query'
from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/timeout.rb:62:in `timeout'
from /Library/Ruby/Gems/1.8/gems/whois-2.0.2/lib/whois/client.rb:87:in `query'
from checker.rb:7:in `check_domain'
from checker.rb:14
from checker.rb:11:in `each'
from checker.rb:11

最佳答案

这个问题有两种可能的解释:

  1. 您在防火墙/代理后面,客户端无法访问服务器
  2. (更现实)你的请求被限制了。某些 .COM 服务器(例如 GoDaddy)用于重置连接以防止多次查询。参见 this ticket .您可以通过限制对同一服务器的请求数量来解决此问题。

关于ruby - ECONNRESET (Whois::ConnectionError) - 尝试在 Ruby 中查询 Whois 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5825150/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com