структура HTTP_DATA_CHUNK (http.h)

Структура HTTP_DATA_CHUNK представляет отдельный блок данных либо в памяти, либо в файле, либо в кэше фрагмента ответа API HTTP-сервера.

Синтаксис

typedef struct _HTTP_DATA_CHUNK {
  HTTP_DATA_CHUNK_TYPE DataChunkType;
  union {
    struct {
      PVOID pBuffer;
      ULONG BufferLength;
    } FromMemory;
    struct {
      HTTP_BYTE_RANGE ByteRange;
      HANDLE          FileHandle;
    } FromFileHandle;
    struct {
      USHORT FragmentNameLength;
      PCWSTR pFragmentName;
    } FromFragmentCache;
    struct {
      HTTP_BYTE_RANGE ByteRange;
      PCWSTR          pFragmentName;
    } FromFragmentCacheEx;
    struct {
      USHORT               TrailerCount;
      PHTTP_UNKNOWN_HEADER pTrailers;
    } Trailers;
    struct {
      HTTP_WINHTTP_FAST_FORWARDING_DATA WhFastForwardingData;
    } FromWinHttpFastForwarding;
  };
} HTTP_DATA_CHUNK, *PHTTP_DATA_CHUNK;

Члены

DataChunkType

Тип хранилища данных. Этот член может быть одним из значений перечисления HTTP_DATA_CHUNK_TYPE .

FromMemory

FromMemory.pBuffer

Указатель на начальный адрес памяти блока данных.

FromMemory.BufferLength

Длина блока данных (в байтах).

FromFileHandle

FromFileHandle.ByteRange

Структура HTTP_BYTE_RANGE , указывающая весь файл или его часть. Чтобы указать весь файл, задайте для элемента StartingOffset нулевое значение, а для элемента Length— значение HTTP_BYTE_RANGE_TO_EOF.

FromFileHandle.FileHandle

Откройте дескриптор для соответствующего файла.

FromFragmentCache

FromFragmentCache.FragmentNameLength

Длина (в байтах) имени фрагмента, не включая завершающий символ NULL.

FromFragmentCache.pFragmentName

Указатель на строку, содержащую имя фрагмента, назначенное при добавлении фрагмента в кэш фрагмента ответа с помощью функции HttpAddFragmentToCache .

FromFragmentCacheEx

FromFragmentCacheEx.ByteRange

Структура HTTP_BYTE_RANGE , указывающая диапазон байтов в кэшированном фрагменте.

FromFragmentCacheEx.pFragmentName

Указатель на строку, содержащую имя фрагмента, назначенное при добавлении фрагмента в кэш фрагмента ответа с помощью функции HttpAddFragmentToCache . Длина строки не может превышать 65532 байта.

Примечание Эта строка должна быть завершена со значением NULL.
 

Trailers

Trailers.TrailerCount

Количество HTTP_UNKNOWN_HEADER структур в массиве, на который указывают pTrailers.

Trailers.pTrailers

Указатель на массив HTTP_UNKNOWN_HEADER структур, содержащих трейлеры.

FromWinHttpFastForwarding

FromWinHttpFastForwarding.WhFastForwardingData

Требования

Требование Значение
Минимальная версия клиента Windows Vista, Windows XP с пакетом обновления 2 (SP2) [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Верхняя часть http.h

См. также раздел

Структуры API HTTP-сервера версии 1.0

HTTP_REQUEST

HTTP_RESPONSE

HttpAddFragmentToCache

HttpSendResponseEntityBody