HttpResponseMessage.Content.Headers ContentDisposition имеет значение null
При загрузке файла с помощью HttpClient я загружаю сначала заголовки, а затем содержимое. Когда загружаются заголовки, я вижу коллекцию заголовков в свойстве Content объекта HttpResponseMessage, но при обращении к нему через ContentDisposition в заголовках получаем null
Почему это происходит? Fiddler показывает заголовки в порядке ...
Код:
var responseMessage = await httpClient.GetAsync(uri,
HttpCompletionOption.ResponseHeadersRead).ConfigureAwait(continueOnCapturedContext: false);
Обновление 1Похоже, этот класс следует за реализацией Content-Disposition, описанной вRFC 2616 и не может обработать обновление реализации Content-DispositionRFC 6266, RFC 2616 определяетfilename
значение параметра должно бытькавычко строкагде обновление RFC 6266 просто утверждает, что это должно бытьстоимость.
content-disposition = "Content-Disposition" ":"
disposition-type *( ";" disposition-parm )
disposition-type = "attachment" | disp-extension-token
disposition-parm = filename-parm | disp-extension-parm
filename-parm = "filename" "=" quoted-string
disp-extension-token = token
disp-extension-parm = token "=" ( token | quoted-string )
RFC 6266 Грамматикаcontent-disposition = "Content-Disposition" ":"
disposition-type *( ";" disposition-parm )
disposition-type = "inline" | "attachment" | disp-ext-type
; case-insensitive
disp-ext-type = token
disposition-parm = filename-parm | disp-ext-parm
filename-parm = "filename" "=" value
| "filename*" "=" ext-value
disp-ext-parm = token "=" value
| ext-token "=" ext-value
ext-token = <the characters in token, followed by "*">
гдеext-value = <ext-value, defined in [RFC5987], Section 3.2>
Рабочий случай
Неудачный случай
Обновление 2Открылпроездной билет с MS подключиться.
Обновление 3Microsoft признала, чтоэто ошибка и исправит это.