powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Создать http-сервис в проекте MVC
8 сообщений из 8, страница 1 из 1
Создать http-сервис в проекте MVC
    #39215331
AspUser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день! Подскажите как правильно сделать http-сервис задачей которого будет принять .zip , обработать и вернуть лог обработки. Конечно же пользоваться этим сервисом надо с логином и паролем. Я так понимаю это не просто контроллер ? В своих asp.net проектах я обращаюсь к http-сервисам
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
....
            System.Net.WebRequest request = System.Net.WebRequest.Create(UrlData);
            request.Method = "POST";
            byte[] byteArray = Encoding.Default.GetBytes(sb.ToString());//определяем что передаем в байтах 
            Stream newStream = request.GetRequestStream();
            newStream.Write(byteArray, 0, byteArray.Length);
            newStream.Close();
            request.Credentials = new.....



но как же подобный сервис сделать в MVC проекте ?
...
Рейтинг: 0 / 0
Создать http-сервис в проекте MVC
    #39215419
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AspUserЯ так понимаю это не просто контроллер ?

Не просто контроллер, а контроллер с действием и требуемой логикой.
...
Рейтинг: 0 / 0
Создать http-сервис в проекте MVC
    #39215495
AspUser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
т.е. вы хотите сказать что под пример обращения к сервису который выше я могу сделать обычный контроллер типа:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
 
   public class ServiceController : Controller
    {
        [Authorize]
        public string IndexTest(byte[] myData)
        {
            //Логика работы

            return "Обработка завершена!";
        }
     
    }



?
...
Рейтинг: 0 / 0
Создать http-сервис в проекте MVC
    #39215511
swaap
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AspUser,

а что вас тут смущает?
...
Рейтинг: 0 / 0
Создать http-сервис в проекте MVC
    #39215517
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AspUser, смотрите в сторону Web API. Все без проблем можно сделать.
...
Рейтинг: 0 / 0
Создать http-сервис в проекте MVC
    #39215548
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AspUserт.е. вы хотите сказать что под пример обращения к сервису который выше я могу сделать обычный контроллер типа:

да, можешь сделать так
...
Рейтинг: 0 / 0
Создать http-сервис в проекте MVC
    #39216260
AspUser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну ни как не получается передать байты:
Есть контроллер
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
 public class ServiceController : Controller
    {
        [HttpPost]
        public string PostData(byte[] value)
        {
            if (value != null)
            {
                return "Обработка вх. данных " + value.Length + " завершена!";
            }
            return "Ok! public string PostData";
        }

    }


и есть другой проект где веб-форма исполняет код:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
 protected void Button1_Click(object sender, EventArgs e)
        {
            string Status = "Успешно!";

            StringBuilder sb = new StringBuilder();
            sb.Append("Title=");
            sb.Append("Description=");
            sb.Append("Keywords=");
            sb.Append("productName=");

            string UrlData = "http://localhost/TestMVC/Service/PostData";
            System.Net.WebRequest request = System.Net.WebRequest.Create(UrlData);
            request.Method = "POST";
            byte[] byteArray = Encoding.Default.GetBytes(sb.ToString());//определяем что передаем в байтах 
            Stream newStream = request.GetRequestStream();
            newStream.Write(byteArray, 0, byteArray.Length);
            newStream.Close();

            try
            {
                System.Net.HttpWebResponse response = (System.Net.HttpWebResponse)request.GetResponse();
                using (StreamReader stream = new StreamReader(response.GetResponseStream(), Encoding.UTF8))
                {
                    Response.Write(stream.ReadToEnd());
                }
            }
            catch (WebException err)
            {
                Status = "Ошибка доступа к сервису:" + err.Message;
            }

        }



и я вижу все время сообщение Ok! public string PostData, т.е. сервис работает но я ни как ему не могу подать на вход byte[] value
...
Рейтинг: 0 / 0
Создать http-сервис в проекте MVC
    #39216292
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Создать http-сервис в проекте MVC
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]