-
Notifications
You must be signed in to change notification settings - Fork 545
Open
Labels
priority: p3Desirable enhancement or fix. May not be included in next release.Desirable enhancement or fix. May not be included in next release.type: feature request‘Nice-to-have’ improvement, new feature or different behavior or design.‘Nice-to-have’ improvement, new feature or different behavior or design.
Description
By default, the http version used by Google is HTTP 1.1 ( I checked it by printing the response.Version) .
I have tried to set the version to 2.0 (as it has many advantages)
I was able to do it for Download request as below
var req = service.Files.Get(file.fileId);
req.ModifyRequest = AddHeader; //I set the Version and VersionPolicy on this callback.
var progress = await req.ExecuteAsStreamAsync DownloadAsync(fs);
But for batch request, if I set it on individual request, it is not getting honored.
BatchRequest _batch = new BatchRequest(service);
foreach (var file in files)
{
var request = service.Files.Get(file.fileId);
request.ModifyRequest = AddHeader;
request.Fields = "*";
_batch.Queue(request, response);
}
Setting it on HttpClient level also doesnt seem to get honored.
var service = new DriveService(new BaseClientService.Initializer()
{
HttpClientFactory = GetHttpClientFactory(),
HttpClientInitializer = ImpersonatedServiceCredential,
});
service.HttpClient.DefaultRequestVersion = new Version(2, 0); // Use HTTP/2
service.HttpClient.DefaultVersionPolicy = HttpVersionPolicy.RequestVersionOrHigher;
Can you suggest how can I set the request version to 2.0 for all my requests ?
Metadata
Metadata
Assignees
Labels
priority: p3Desirable enhancement or fix. May not be included in next release.Desirable enhancement or fix. May not be included in next release.type: feature request‘Nice-to-have’ improvement, new feature or different behavior or design.‘Nice-to-have’ improvement, new feature or different behavior or design.