gpt4 book ai didi

java - 如何使用 Bytebuddy 检测 HttpURLConnection?

转载 作者:行者123 更新时间:2023-12-02 03:28:26 24 4
gpt4 key购买 nike

我正在使用 Bytebuddy 拦截 HttpURLConnection 的某些方法并添加跟踪。我编写了以下代码:

File temp = Files.createTempDirectory("tmp").toFile();
new AgentBuilder.Default().ignore(none())
.enableBootstrapInjection(inst, temp)
.type(hasSuperType(is(HttpURLConnection.class)))
.transform(new AgentBuilder.Transformer.ForAdvice()
.include(HttpURLConnection.class.getClassLoader())
.advice(named("setRequestMethod"), HttpURLIntercept.class.getName()))
.installOn(inst);

但该方法从未被检测过。

我知道 HttpURLConnection 是在 Bootstrap 上加载的。我怎样才能继续检测它?

最佳答案

默认情况下,Byte Buddy 会忽略引导类加载器。定义一个不包含 HttpUrlConnection 的不同忽略匹配器以避免这种排除。请注意,JVM 本身定义了数千个类,这些类全部加载在引导加载程序上,如果您不有效地排除大多数引导类,那么 JVM stsrtup 会变得非常慢。

关于java - 如何使用 Bytebuddy 检测 HttpURLConnection?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56898442/

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