gpt4 book ai didi

java - 在 Java 中解析没有 DNS 查询的 URL

转载 作者:行者123 更新时间:2023-11-30 09:52:53 25 4
gpt4 key购买 nike

我正在用 Java 解析 squid 日志。使用 URL 类似乎是合适的。但是,此类发出 DNS 请求,这会无限期地减慢解析速度。还有其他简单的方法可以从 url 中提取主机名和端口吗?

条件

  • squid 日志中可能省略了 url 模式
  • 应该为 ftp、http、https 协议(protocol)派生一个不存在的(默认)端口

日志示例:

1288763851.129    295 10.10.100.10 TCP_MISS/200 435 GET http://win.mail.ru/cgi-bin/checknew? - DIRECT/217.69.128.52 text/plain
1288763881.110 275 10.10.100.10 TCP_MISS/200 434 GET http://win.mail.ru/cgi-bin/checknew? - DIRECT/217.69.128.52 text/plain
1288763883.093 60001 10.10.102.202 TCP_MISS/503 0 CONNECT www.update.microsoft.com:443 - DIRECT/- -
1288763884.301 0 10.10.102.202 NONE/400 3506 GET / - NONE/- text/html
1288763911.194 359 10.10.100.10 TCP_MISS/200 435 GET http://win.mail.ru/cgi-bin/checknew? - DIRECT/217.69.128.52 text/plain
1288763941.097 264 10.10.100.10 TCP_MISS/200 434 GET http://win.mail.ru/cgi-bin/checknew? - DIRECT/217.69.128.52 text/plain
1288763944.094 59777 10.10.102.202 TCP_MISS/503 0 CONNECT www.update.microsoft.com:443 - DIRECT/- -
1288763971.123 289 10.10.100.10 TCP_MISS/200 434 GET http://win.mail.ru/cgi-bin/checknew? - DIRECT/217.69.128.52 text/plain
1288764002.257 1421 10.10.100.10 TCP_MISS/200 435 GET http://win.mail.ru/cgi-bin/checknew? - DIRECT/217.69.128.52 text/plain

编辑:我必须为此任务编写自己的类解析器。如果字符串具有 IP 或主机名的简单字符串,则使用 InetAddress。

最佳答案

您可以试试 ReSTLet 的 Reference类。

关于java - 在 Java 中解析没有 DNS 查询的 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4089459/

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