вызвать веб-сервис из httpmodule - PullRequest
0 голосов
/ 06 марта 2009

Я настроил веб-сервис и попытался вызвать его из моего httpmodule с помощью класса Proxy, и он просто остановился. Я сделал больше тестов и попробовал WebRequest, и это тоже истекло. Если я укажу неправильный URL, он выдаст исключение с 404, поэтому кажется, что должно быть возможным. Вызов веб-службы из веб-браузера работает нормально, так что это не проблема. Есть идеи?

Ответы [ 2 ]

1 голос
/ 06 марта 2009

HttpModules ничем не отличаются от любого другого кода. Если вы можете сделать это из любого другого места, вы можете сделать это из модуля. Поскольку вы ничего не сказали о том, что на самом деле нужен прокси, мне неясно, почему вы используете класс Proxy в этом случае. Попытка использовать прокси-сервер, когда в этом нет необходимости, скорее всего приведет к тайм-ауту, поскольку вы отправляете запрос на несуществующий сетевой прокси-сервер.

Разве вы не можете просто использовать Web Reference или WebRequest для подключения к услуге?

0 голосов
/ 06 марта 2009

вы уверены, что между вами и веб-службой нет прокси-сервера, .Net делает хорошую работу, пытаясь разобраться в этом, но я обнаружил много проблем, позволяющих инфраструктуре попытаться выяснить, где находится прокси.

Вот жестко закодированное решение, которое, хотя и не является наилучшей практикой, показывает, как подключить прокси к запросу веб-клиента.

WebProxy proxy = new WebProxy("111.222.333.444:8080");
proxy.Credentials = CredentialCache.DefaultCredentials;
WebClient wc = new WebClient();
wc.Proxy = proxy;
// do your other stuff

Я заметил, что .Net действительно борется, когда порт не 80, и когда на серверной платформе нет прокси-сервера, установленного в Internet Explorer, что я предпочел бы быть честным, я считаю, что по умолчанию просто смотрит на то, что установлено для локального подключение к интернету, но не цитируйте меня по этому поводу

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