小编Aka*_*hal的帖子

如果IF条件变为真,我如何跳过迭代,并转到do ... end的第一行?

我写了以下代码:

require 'net/http'
require 'uri'
require 'IPAddr'
require 'timeout'
require 'Resolv'
require 'open-uri'

#puts "Origin IP:\n\n"
#originip = gets()
(IPAddr.new("209.85.175.120")..IPAddr.new("209.85.175.150")).each do |address|
  uri = URI("http://#{address.to_s}")
  puts "#{uri}"
  http = Net::HTTP.new(uri.host, uri.port)
  puts "#{http}"
  Net::HTTP.start(uri.host, uri.port) do |http|
    request = Net::HTTP::Get.new uri.request_uri
    response = http.request request
    if response.code == "301" || response.code == "400" then

    end
    #request.initialize_http_header({"Origin" => "#{originip}"})
  end
Run Code Online (Sandbox Code Playgroud)

是否有可能uri = URI("http://#{address.to_s}")在我的if条件下排队

if response.code == "301" || response.code == "400" then
 # condition
end
Run Code Online (Sandbox Code Playgroud)

在上面的代码变成了真的吗?如果条件成立,我怎样才能转到下一个IP地址并跳过当前的IP地址?

是否可以 …

ruby label goto net-http

4
推荐指数
2
解决办法
1万
查看次数

如何使用ruby中的File.Open打开存储在变量中的文件?

我想打开文件并读取我从控制台传递的文件.喜欢

filename = gets()
File.open(filename,'r') do |file|
Run Code Online (Sandbox Code Playgroud)

但在控制台上收到错误如下:

test.rb:7:in `initialize': Invalid argument - myfile (Errno::EINVAL)
        from test.rb:7:in `open'
        from test.rb:7
Run Code Online (Sandbox Code Playgroud)

是否可以读取从控制台获取文件名并do |file| ..end在ruby中执行的文件?

ruby console file

2
推荐指数
1
解决办法
1169
查看次数

标签 统计

ruby ×2

console ×1

file ×1

goto ×1

label ×1

net-http ×1