Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
BITS может отправить расположение загружаемого файла (по ссылке) в серверное приложение или отправить загружаемый файл в тело запроса (по значению). Чтобы указать, как BITS отправляет файл на серверное приложение, задайте метабазное свойство IIS, BITSServerNotificationType. В случае указания по ссылке, BITS передает местоположение файла в заголовке BITS-Request-DataFile-Name. Чтобы отправить ответ, создайте и напишите ответ в файл, указанный в заголовке BITS-Response-DataFile-Name.
Серверные приложения, отправляющие один и тот же ответ многим клиентам, должны использовать ссылочную передачу, чтобы на сервере существовала только одна копия ответа. Например, в приложении обновления программного обеспечения клиент отправит свою конфигурацию программного обеспечения в серверное приложение. Серверное приложение определяет, какой пакет требуется клиенту и отправляет URL-адрес пакета в BITS. Затем BITS скачивает пакет в качестве ответа.
Серверные приложения, которые создают уникальные ответы для каждого клиента, должны использовать метод передачи по значению. Например, серверное приложение, поддерживающее покупку музыкальных файлов, потребуется отправить подписанный музыкальный файл клиенту. Так как подписанный музыкальный файл является уникальным для клиента, серверное приложение не будет хранить его на сервере. Передача по значению также полезна для приложения, которое уже разработано для приема данных веб-клиента напрямую.
Дополнительные сведения о заголовках запросов и ответов, используемых между BITS и серверным приложением, см. в протоколе уведомлений для серверных приложений.
В следующем примере JavaScript показано, как получить доступ к файлам запроса и ответа в серверном приложении, в котором используется уведомление по ссылке (BITS передает расположение файлов в заголовках).
var fso = new ActiveXObject ("Scripting.FileSystemObject")
var requestFileName = Request.ServerVariables ("HTTP_BITS-Request-DataFile-Name")
var responseFileName = Request.ServerVariables ("HTTP_BITS-Response-DataFile-Name")
var requestStream
var responseStream
var ForReading = 1
var ForWriting = 2
var TristateUseDefault = -2
//Open the upload data file as text stream for reading.
requestStream = fso.OpenTextFile(requestFileName, ForReading, false, TristateUseDefault);
//Do something with the uploaded data.
//Close the upload stream.
requestStream.Close()
//Open response data file as text stream for writing.
responseStream = fso.OpenTextFile(responseFileName, ForWriting, true, TristateUseDefault);
//Write a response to the response file.
//Close the response text stream
responseStream.Close()
Если вы хотите использовать другой файл ответа, отличный от файла, указанного в BITS-Response-DataFile-Name, вызовите метод Response.AddHeader, чтобы добавить BITS-Static-Response-URL, как показано в следующем примере. Если указать другой файл ответа, не создайте файл ответа, указанный в BITS-Response-DataFile-Name.
Response.AddHeader "BITS-Static-Response-URL" "https://myserver/mypath/myfile"