Как пинговать веб-сервис, такой как svc, asmx - PullRequest
6 голосов
/ 26 октября 2011

У меня есть приложение .net, и я хочу проверить связь с некоторыми веб-сервисами и показать статус на веб-странице. Я пробовал пинговать, но получаю сообщение "Нет такого хоста в известном".

Но пинг работает для URL или IP, но не работает для службы.

Пожалуйста, напишите идеи здесь

UPDATE:

Я использовал HttpWebResponse и запрос. Я получаю 401 несанкционированный.

Ответы [ 4 ]

3 голосов
/ 26 октября 2011

Используйте для проверки HTTP-глагол head . «Этот метод часто используется для тестирования гипертекстовых ссылок на валидность, доступность и последние изменения».

1 голос
/ 26 октября 2011

Что вы пингуете? Если вы хотите проверить, есть ли там веб-сервис, просто перейдите к полному URL-адресу сервиса и посмотрите, получите ли вы страницу, не найденную или нет. На веб-странице вы могли бы даже придумать и проверить ее с помощью ajax-запроса (посмотрите Microsoft.XMLHTTP) Забавно, что вы должны спросить об этом, потому что каждый веб-сервис, который я разработал, первый метод, который я добавляю к нему, - это ping :), который возвращает свое состояние в одном вкладыше, который может отображаться в форме.

0 голосов
/ 26 октября 2011

Вы можете загрузить приложение, такое как WCF Storm или SOAP UI , которое будет действовать как клиент для вашей службы WCF. У обоих есть бесплатные версии, я полагаю. Они позволят вам создать запрос XML для тестирования службы.

Кроме того, я хотел бы добавить в мои службы настоящий метод Ping, который получает int и возвращает строку с той же int и отметкой времени. Это не является строго необходимым, но это помогает в качестве проверки работоспособности в крайнем случае.

0 голосов
/ 26 октября 2011

Что если вы попытаетесь пропинговать адрес веб-службы вместо всей конечной точки?По сути, EndPoint состоит из адреса и местоположения. Предположим, у вас есть следующая веб-служба под названием CustomerService.svc.

http://myserver.somedomain.com/services/CustomerService.svc

Вам следует попробовать выполнить ping по адресу myserver.somedomain.com.Также следует учитывать, что на некоторых серверах отключена команда ping.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...