head method

Future<int> head(
  1. Uri uri, {
  2. Map<String, Object>? headers,
})

Sends a HEAD request to get the content length of the resource at uri.

Returns the content length as an int.

Implementation

Future<int> head(Uri uri, {Map<String, Object>? headers}) async {
  HttpClient client = VideoProxy.httpClientBuilderImpl.create();
  HttpClientRequest request = await client.headUrl(uri);
  if (headers != null) {
    headers.forEach((key, value) {
      if (key == 'host' && value == Config.serverUrl) return;
      request.headers.set(key, value);
    });
  }
  HttpClientResponse response = await request.close();
  client.close();
  return response.contentLength;
}