Скачивание файла

Есть урл, который ссылается на файл (картинка, вордовский документ...). Как можно скачать этот файл, чтобы в дальнейшем записать его в базу в виде бинарного объекта?

Нравится

2 комментария

Я думаю если это Word документ или картинка то можно открыть его и сделать сохранить как в Word. Как вариант

Попробуйте с помощью такой функции:

function SaveURLAsFileToDatabase(URL, Dataset, DataFieldName) {
	var Extention = ExtractFileExtension(URL);
	if (IsEmptyValue(Extention)) {
		return;
	}
	var FileName = ExtractFileName(URL);
	var xml = new ActiveXObject("Microsoft.XMLHTTP");
	xml.Open("GET", URL, false);
	xml.Send();
	var oStream = new ActiveXObject("Adodb.Stream");
	var adTypeBinary = 1;
	var adSaveCreateOverWrite = 2;
	var adSaveCreateNotExist = 1;
	oStream.Type = adTypeBinary;
	oStream.Open();
	oStream.Write(xml.responseBody);
	var NewFileName = GetTemporaryFileName(FileName, true);
	oStream.SaveToFile(NewFileName, adSaveCreateNotExist);
	oStream.Close();
	SaveFileToDataset(NewFileName, Dataset, 'FileData');
	var FileObject = GetFileSystemObject();
	FileObject.DeleteFile(NewFileName);
}

Она сохраняет файл по ссылке во временный файл на диске, потом сохраняет этот файл в указанное поле датасета и удаляет временный файл.

Для корректной работы функции необходимо подключить к скрипту, в котором она будет вызываться, скрипт scr_FileUtils. Датасет, в который сохраняется содержимое файла, должен быть отфильтрован и открыт, а после выполнения функции необходимо выполнить Dataset.Post().

Показать все комментарии