【发布时间】:2017-06-28 07:50:49
【问题描述】:
我正在尝试使用 Ruby std 完成一些 RESTful 的工作。库,“uri”和“net/https”。我想通过明确指定的传出接口访问链接本地 IPv6 地址,例如 fe80::cba7:32b1:741d:5c41%ens192。
当我尝试创建新的 URI 实例时 - 我仍然收到相同的错误(对于下面的两个示例):
URI("https://[fe80::cba7:32b1:741d:5c41%ens192]/")
URI("https://[fe80::cba7:32b1:741d:5c41%25ens192]/")
返回
URI::InvalidURIError: bad URI(is not URI?)
请问您知道如何处理这些 IPv6 链接本地地址吗? 仅供参考,我尝试发出一个简单的 HTTP 请求,它可以工作。所以一般来说,Ruby 对 IPv6 没有问题 :)
require 'net/https'
request = Net::HTTP.new('fe80::cba7:32b1:741d:5c41%ens192', 443)
request.use_ssl = true
request.verify_mode = OpenSSL::SSL::VERIFY_NONE
request.get('/')
提前致谢!
【问题讨论】:
标签: ruby uri ipv6 link-local