Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: Web, ASP.NET
Войти
Регистрация
Восстановить пароль
 
jr_
133 / 134 / 52
Регистрация: 14.06.2016
Сообщений: 466
Завершенные тесты: 5
1

Web api, позволить загрузку из только из определенной директории

21.06.2018, 05:15. Просмотров 334. Ответов 3
Метки нет (Все метки)

C#
1
2
3
4
5
6
7
8
public HttpResponseMessage Get(string file) {
    var sPath = HttpContext.Current.Server.MapPath("/App_Data/") + file;
    var result = new HttpResponseMessage(HttpStatusCode.OK);
    var stream = File.OpenRead(sPath);
    result.Content = new StreamContent(stream);
    result.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");
    return result;
}
соответственно запрос типа controller/method?file=..\..\bin\mysite.dll и тому подобные позволят скачать любой файл с сервера, что недопустимо.
пока решил этот вопрос проверкой полного пути (Path.GetFullPath()) на наличие папки из которой можно качать, но это не дело и я уверен, что есть более адекватные методы
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.06.2018, 05:15
Ответы с готовыми решениями:

2 сервиса (WCF Web API и ASP.NET Web API) на одном хосте
Есть БД с юзерами Есть консольное приложение (OWIN selfhost) с контроллером ImportController :...

Позволить web приложению работать с файлами пользователей
Здравствуйте! Я выкладываю для свободного использования некоторые счетные программы на vb.net,...

Позволить вводить в input только числа?
Добрый вечер. Как сделать, что в input можно было вводить только числа? При этом первая цифра не...

Прикрутить загрузку с FTP вместо директории
Друзья! Ест небольшая загвоздка...не могу разобраться. Ситуация следующая...есть скрипт, который...

CheckedListBox, позволить выбирать только один элемент
Visual Studio 2012 Компонент: checkedListBox У него есть свойство: "SelectionMode". У него есть...

3
insite2012
Модератор
Эксперт .NET
4885 / 3837 / 1097
Регистрация: 12.10.2013
Сообщений: 11,101
Записей в блоге: 2
21.06.2018, 06:13 2
jr_, посмотрите тут и тут.
0
jr_
133 / 134 / 52
Регистрация: 14.06.2016
Сообщений: 466
Завершенные тесты: 5
21.06.2018, 07:11  [ТС] 3
Не совсем понял, как перевести второй пример для webapi
0
jr_
133 / 134 / 52
Регистрация: 14.06.2016
Сообщений: 466
Завершенные тесты: 5
10.08.2018, 15:24  [ТС] 4
по прежнему актуально.

Добавлено через 57 минут
неактуально
0
10.08.2018, 15:24
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.08.2018, 15:24

Позволить выбрать только один Checkbox из многих
В DataGridView есть столбец с CheckBox'ами. Необходимо обеспечить выбор только одного из них, при...

Позволить скачивать архивы только авторизованным пользователям
Нужна наводка. Авторизация есть, все прочее. Но, если ввести прямую ссылку на архив, происходит...

Как позволить ввод только цифр и запятых?
Знаю, что позволить ввод только цифр можно так: if (e.KeyChar != 8 && (e.KeyChar < 48 || e.KeyChar...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru