0
xintrea
13.04.12
✎
08:49
|
Здравствуйте!
Есть у меня самописная конфигурация. Особенность в том, что к бланкам документов прикрепляются файлы сканированных документов. И этих файлов около 50Гб. Сами данные занимают немного, около 80Мб.
Доступ к конфигурации должен быть через Интернет из Тонкого и Веб клиента. То есть, расшарить диск с набором файлов и примонтировать его у клиента, как это обычно делают внутри одной организации, не получится. Поэтому пока что единственным выходом вижу хранение файлов прямо в базе, что не есть гут.
Но мне подсказали, что вроде бы и при Тонком и при Веб клиенте можно хранить файлы не в базе, а тоже в виде файлов. Вот сижу и раздумываю, как оно может работать. Кто в курсе проблемы, пожалуйста, ответьте на следующие вопросы.
Заливка файлов:
Файлы пользователь может класть в программу через механизм временного хранилища. На сервере файл вытаскивается из временного хранилища и кладется как файл в какую-нить директорию. Имя директории и файла запоминается в базе. Файл во временном хранилище удаляется. Правильно я все понимаю?
Получение файлов:
Получение файла в Тонком и Веб клиентах возможно через Http протокол, то есть обязательно должен быть поднят Апач. (Для Тонкого клиента Апач необязателен, но так как предполагается что будет работать и Веб клиент, то Апач нужен, пусть будет). Зная имя файла и место его хранения, программа может сформировать Http-ссылку, по которой файл будет доступен для скачивания.
И тут вопросы возникают.
1. Как в Тонком клиенте получить файл по HTTP так, чтобы он открылся "на просмотр"?
2. Как в Тонком клиенте получить файл по HTTP так, чтобы он открылся в режиме "сохранить как"?
3. Как в Веб клиенте получить файл по HTTP так, чтобы он открылся "на просмотр"?
4. Как в Веб клиенте получить файл по HTTP так, чтобы он открылся в режиме "сохранить как"?
|
|
6
xintrea
13.04.12
✎
11:32
|
> это ответ на все вопросы. принял строку, расшифровал, спросил у пользователя - открыть или сохранить.
Не понял, зачем в BASE64 конвертить, когда можно через временное хранилище передать? В BASE64 оверхед по размеру раза в два будет, а сетка не резиновая.
|
|