createHttpClient method
Returns a new HttpClient using the given context.
When this override is installed, this function overrides the behavior of
new HttpClient.
Implementation
@override
HttpClient createHttpClient(SecurityContext? context) {
httpRecorderBuilder() => _HttpRecorderImpl();
if (customHttpOverrides != null) {
return _ApmHttpClient(
customHttpOverrides!.createHttpClient(context), httpRecorderBuilder);
}
// 如果没有定义customHttpOverrides,则先把HttpOverrides.global置空,防止递归调用,使得_HttpClient(默认的HttpClient)可以被初始化
HttpOverrides.global = null;
final HttpClient client =
_ApmHttpClient(HttpClient(context: context), httpRecorderBuilder);
HttpOverrides.global = this;
return client;
}