Я хотел бы получать файлы с сайта asp.net, но я хотел бы проверить запрос с данными в базе данных, прежде чем отправлять файл клиенту.Asp.net C# пользовательский обработчик файлов
Для изображений, которые я бы погрузка с помощью стандартного тега HTML изображения, как это:
'<img src="/Uploads/RANDOMGUID/img.aspx" alt="The Moon" title="The Moon">
Запросов будут иметь случайный идентификатор GUID в пути, который отображает на поле в базе данных для сохраненного изображения.
Я хотел бы иметь одну точку входа для всех запросов это может быть ASPX или ASHX страница, например, [если там не лучший путь], это будет тогда:
- Разбираем GUID из пути запроса
- Проверьте, если запрашивающая сторона имеет доступ к запрошенной изображения или файла, используя данные базы данных
- возвратить изображение ошибка или файл, если не авторизован
- Если разрешено возвращать содержимое файла и установить тип содержимого
Как следует реализовать такие функции? Нужно ли мне расширение файла сайта, которое обрабатывается в aspx-файле и возвращает тип содержимого пользовательского файла?
Вы не должны использовать ASPX для этого, поскольку просмотр не требуется. Используйте общий обработчик ASHX или зарегистрируйте новый обработчик в файле web.config. – mason
Я полностью согласен. Я отредактировал ответ с этой дополнительной информацией. Благодарю. – Shadowed
То, что я прочитал, похоже, предполагает, что это противоречит RFC и может вызвать проблемы с кешированием. Это что-то интересное? Его одна из причин, почему я предложил иметь GUID на пути. – Dizzle