Поделиться через


Ack for Create-Session

Используйте пакет Ack for Create-Session , чтобы подтвердить запрос клиента на создание сеанса .

reason-code reason-description
BITS-Packet-Type: Ack
BITS-Protocol: {guid}
BITS-Session-Id: {guid}
BITS-Host-Id: PublicHostName
BITS-Host-Id-Fallback-Timeout: Timeout
Accept-Encoding: Identity
Content-Length: length
BITS-Error-Code: error-code
BITS-Error-Context: error-context

Заголовки

reason-code

Замените reason-code кодом причины HTTP. В следующей таблице показаны типичные коды причин для ответа на запрос Create-Session . Список кодов причин HTTP см. в статье RFC 2616.

Код причины Описание
200
Все в порядке. Запрос выполнен успешно.
201
Создан. Сеанс создан.
403
Запрещено. Пользователю запрещено отправлять файлы по указанному URL-адресу.
404
Не найден. Указанный URL-адрес не существует.
409
Конфликт. Файл существует на сервере и не может быть перезаписан.

описание причины

Замените reason-description описанием HTTP, связанным с кодом причины. Например, задайте для параметра reason-description значение ОК, если аргумент reason-code имеет значение 200.

Bits-Packet-Type

Определяет этот пакет ответа как пакет Ack.

Протокол BITS

Строковый ИДЕНТИФИКАТОР GUID, определяющий протокол, который сервер хочет использовать для этого сеанса. Замените {guid} идентификатором протокола из списка протоколов, которые клиент включает в запрос Create-Session ; Заголовок BITS-Supported-Protocol содержит список. Этот заголовок следует включать только в том случае, если аргумент reason-code имеет значение 200 или 201.

BITS-Session-Id

Строковый ИДЕНТИФИКАТОР GUID, определяющий этот сеанс для клиента. Замените {guid} идентификатором сеанса, который клиент отправляет во всех последующих пакетах запроса.

BITS использует GUID для идентификации сеанса, но можно использовать любую строку HTTP длиной до 100 символов.

BITS-Host-Id

Необязательный элемент. Включите этот заголовок, только если задано свойство расширения BITS IIS BITSHostId. Замените PublicHostName именем сервера или IP-адресом из свойства BITSHostId.

Клиент должен заменить серверную часть удаленного URL-адреса на всех последующих пакетах. Если клиент не указывает это имя узла в последующих пакетах, возможно, задание начнется снова на другом сервере в ферме, оставив частичный файл отправки на предыдущем сервере.

Bits-Host-Id-Fallback-Timeout

Необязательный элемент. Этот заголовок следует включать только в том случае, если указан заголовок BITS-Host-Id. Замените Timeout значением времени ожидания из свойства BITSHostIdFallbackTimeout. Свойство BITSHostIdFallbackTimeout является одним из свойств расширения BITS IIS.

Клиент использует период ожидания, чтобы определить, как долго он пытается повторно подключиться к имени сервера, указанному в заголовке BITS-Host-Id, перед возвратом к имени узла, указанному в удаленном имени файла задания. Таймер начинается, когда BITS не может подключиться к серверу BITS-Host-Id. Таймер сбрасывается при восстановлении соединения с сервером. Если период ожидания не указан, клиент никогда не возвращается к имени узла, указанному в удаленном имени файла.

Accept-Encoding

Определяет схему кодирования, используемую для фрагментов, отправляемых на сервер. Пакет Fragment содержит закодированный фрагмент в теле пакета. Для сервера BITS требуется кодировка удостоверения (открытый текст). Этот заголовок следует включать только в том случае, если аргумент Reason-code имеет значение 200 или 201.

Длина содержимого

Замените length числом байтов, включенным в текст ответа. Требуется, даже если текст ответа не содержит содержимого.

BITS-error-Code

Замените код ошибки шестнадцатеричным числом, представляющим значение HRESULT, связанное с ошибкой на стороне сервера. Этот заголовок следует включать только в том случае, если аргумент reason-code не равен 200 или 201.

Bits-Error-Context

Замените error-context шестнадцатеричным числом, представляющим контекст, в котором произошла ошибка. Укажите шестнадцатеричное число для BG_ERROR_CONTEXT_REMOTE_FILE (0x5), если сервер создал ошибку. В противном случае укажите шестнадцатеричное число для BG_ERROR_CONTEXT_REMOTE_APPLICATION (0x7), если ошибка была создана приложением, которому передается файл отправки. Этот заголовок следует включать только в том случае, если аргумент reason-code не равен 200 или 201.

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

Создание сеанса