Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > ASP.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.05.2015, 08:43   #1
Sasha811
Пользователь
 
Регистрация: 20.12.2008
Сообщений: 22
По умолчанию Web API Http Server в рамках локальной сети

Уважаемые специалисты,
начал изучать Web API (уже 3 дня изучаю)) - пока что исключительно в составе консольных приложений.
Подскажите, где можно глянуть примеры как читать данные с сервера в рамках локальной сети, - то есть клиент это веб-браузер на другой машине,- не на localhost. Нужно ли выполнить на машине клиента какие то дополнительные конфигурации?.
В общем хочу добится аналогичного возрата данных - что бы забив на другой машине (клиента) http://192.168.1.119:5555/api/Product мне вернуло тот же рузультат, что и http://localhost:5555/api/Product на машине сервера.
192.168.1.119 - ip адрес машины где запущена консоль с Web сервером.

Пока реализовал приложение внутри, которого контроллер, реализующий пока только один метод GET. Реализовал класс Product, обекты(данные) которого, могу вычитать через браузер. Все у меня работает в рамках localhost. Сервер соответственно имеет тип HttpSelfHostServer.

так на всякий случай - так реализован сервер
Код:
var selfHostConfiguraiton = new HttpSelfHostConfiguration("http://localhost:5555");
selfHostConfiguraiton.Routes.MapHttpRoute(
                                                          name: "DefaultApiRoute",
                                                          routeTemplate: "api/{controller}",
                                                          defaults: null
                                                            );
 
                            using (var server = new HttpSelfHostServer(selfHostConfiguraiton))
                            {
                                server.OpenAsync().Wait();
                                Console.WriteLine("Press any key to exit server");
                                Console.ReadLine();
                            }
Спасибо всем

Последний раз редактировалось Stilet; 08.05.2015 в 13:02.
Sasha811 вне форума Ответить с цитированием
Старый 08.05.2015, 10:02   #2
Streletz
Старожил
 
Регистрация: 03.01.2014
Сообщений: 2,870
По умолчанию

Цитата:
Сообщение от Sasha811 Посмотреть сообщение
Подскажите, где можно глянуть примеры как читать данные с сервера в рамках локальной сети, - то есть клиент это веб-браузер на другой машине,- не на localhost. Нужно ли выполнить на машине клиента какие то дополнительные конфигурации?
Отправляете запрос на сервер. Он, по идее, должен Вам выдать результат в виде JSON или XML.
Дело в том, что любое Web API в 1ю очередь предназначено для программного, а не "пользовательского" (через браузер) взаимодействия с сайтом.
Через браузер можно только посмотреть JSON или XML выдачу при тестировании, но для практического использования или просто для приведения этой выдачи в "нормально читаемый вид", нужна программа или web приложение, которое будет выполнять соответствующую обработку.
Streletz вне форума Ответить с цитированием
Старый 08.05.2015, 12:07   #3
Sasha811
Пользователь
 
Регистрация: 20.12.2008
Сообщений: 22
По умолчанию

То есть правильно ли я понимаю? - реализация моего сервера (var selfHostConfiguraiton = new HttpSelfHostConfiguration("http://localhost:5555"); ну и т.д.) подойдет не долько для localhost. То есть к такому серверу вполне можна слать запросы с другой машины - только не с браузера, например, а например запустить с нее простейший C# Console клиент - (например
Код:
HttpClient client = new HttpClient();
client.BaseAddress = new Uri("http://192.168.1.112:5555/");
// и т.д)

спасибо

Последний раз редактировалось Stilet; 08.05.2015 в 13:02.
Sasha811 вне форума Ответить с цитированием
Старый 08.05.2015, 13:04   #4
Streletz
Старожил
 
Регистрация: 03.01.2014
Сообщений: 2,870
По умолчанию

Цитата:
Сообщение от Sasha811 Посмотреть сообщение
То есть правильно ли я понимаю? - реализация моего сервера (var selfHostConfiguraiton = new HttpSelfHostConfiguration("http://localhost:5555"); ну и т.д.) подойдет не долько для localhost.
Что-то мне подсказывает, что для развёртывания на удалённой машине, нужно поменять IP адрес и вместо
Цитата:
Сообщение от Sasha811 Посмотреть сообщение
http://localhost:5555
написать другой текст. В прочем, я могу и ошибаться.
Цитата:
Сообщение от Sasha811 Посмотреть сообщение
То есть к такому серверу вполне можна слать запросы с другой машины - только не с браузера, например, а например запустить с нее простейший C# Console клиент - (например
HttpClient client = new HttpClient();
client.BaseAddress = new Uri("http://192.168.1.112:5555/");
// и т.д)
Об этом я уже писал выше. Браузер может подойти только, если работа с API происходит через web приложение (тогда в браузере идёт обращение к этому web приложению, а не напрямую к API), или необходимо просто протестировать выдачу. Если обратиться к API через браузер напрямую, ничего кроме JSON или XML выдачи в браузере отображаться не будет.
Streletz вне форума Ответить с цитированием
Старый 27.05.2015, 15:32   #5
Sasha811
Пользователь
 
Регистрация: 20.12.2008
Сообщений: 22
По умолчанию

Все оказалось очень банально,
- на той машине где был запушен WebServer нужно было отключить антвирус Node - видимо в нем было что то настроено и блокировало посылки - в общем только голову наморочил
Sasha811 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Winsock API HTTP Server Lardes Работа с сетью в Delphi 10 21.12.2013 12:30
http server,http сервер, проблемы с post реализация на java snajper_ro Общие вопросы по Java, Java SE, Kotlin 1 23.10.2011 14:25
Web server и SQL server - администрирование Zak Ysmila Общие вопросы .NET 1 02.06.2011 19:29
Socket: Подключение клиента из глобальной сети к серверу, расположенному в локальной сети Дамир Общие вопросы .NET 4 01.12.2010 12:12