Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема с прокси при работе с веб-сервисами. 
V
    Опции темы
Naum
Дата 3.5.2007, 17:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 743
Регистрация: 7.9.2005
Где: Саратов, ул. Поса дского, 298

Репутация: нет
Всего: 15



Доброго всем времени суток.
Блин, уже полдня бьюсь над парой строчек:
Код

FlightInformation webservice = new FlightInformation();
webservice.Credentials = GalileoUtils.GetCacheCredentials(webservice.Url);
webservice.Proxy = GalileoUtils.GetWebProxy();
IAsyncResult asyncResult = webservice.BeginGetInformation(galileoHAP, apolloHAP, requestBuilder.BuildRequest(request, flight), null, null);
asyncResult.AsyncWaitHandle.WaitOne();
XmlElement vendorResponse = webservice.EndGetInformation(asyncResult);

выдает ошибку "Proxy authentication required". Подскажите, плиз, из-за чего может быть?
Вот что выяснил я:
1. Proxy.Address - если пустое, выдается такая же ошибка.
2. Ну и, конечно, если Proxy.Credentials не имеют никаких прав на доступ к прокси.

Заранее спасибо.



--------------------
У нас всего два праздника Новый год и ТЯПница.
PM MAIL ICQ   Вверх
Naum
Дата 3.5.2007, 18:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 743
Регистрация: 7.9.2005
Где: Саратов, ул. Поса дского, 298

Репутация: нет
Всего: 15



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


--------------------
У нас всего два праздника Новый год и ТЯПница.
PM MAIL ICQ   Вверх
tol05
Дата 4.5.2007, 19:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1632
Регистрация: 21.12.2006
Где: Харьков

Репутация: 6
Всего: 170



а если вместо
Код

webservice.Credentials = GalileoUtils.GetCacheCredentials(webservice.Url);


сделать
Код

webservice.Credentials = System.Net.CredentialCache.DefaultCredentials;


или
Код

Proxy.Credentials  = System.Net.CredentialCache.DefaultCredentials;

 
не помню точно что smile



Это сообщение отредактировал(а) tol05 - 4.5.2007, 19:02


--------------------
На хорошей работе и сны хорошие снятся.
PM MAIL   Вверх
Naum
Дата 10.5.2007, 10:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 743
Регистрация: 7.9.2005
Где: Саратов, ул. Поса дского, 298

Репутация: нет
Всего: 15



tol05, спасибо за ответ но не помогло. :(
Цитата(tol05 @  4.5.2007,  20:01 Найти цитируемый пост)
не помню точно что

Цитата(tol05 @  4.5.2007,  20:01 Найти цитируемый пост)
    
Proxy.Credentials  = System.Net.CredentialCache.DefaultCredentials;




--------------------
У нас всего два праздника Новый год и ТЯПница.
PM MAIL ICQ   Вверх
arilou
Дата 17.5.2007, 10:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Великий МунаБудвин
****


Профиль
Группа: Экс. модератор
Сообщений: 2646
Регистрация: 15.7.2004
Где: город-герой Минск

Репутация: 3
Всего: 61



Naum, скорее всего проблема в следующем. Когда ты запускаешь веб-приложение, оно работает НЕ под аккаунтом залогинившегося юзера, а под тем, которой прописан либо в machine.config (я так понимаю, что имперсонацию ты не используешь). Поэтому System.Net.CredentialCache.DefaultCredentials будет указывать на аккаунт ASPNET (по умолчанию). А прокси ваш наверное настроен пускать только юзеров из вашего домена, или что-то подобное?

Тут выход такой: создать юзера в домене, дать ему доступ к прокси, и настроить имперсонацию в web.config'е твоего сервиса, чтобы использовался этот аккаунт.


--------------------
user posted imageuser posted image
PM WWW ICQ   Вверх
Naum
Дата 18.5.2007, 18:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 743
Регистрация: 7.9.2005
Где: Саратов, ул. Поса дского, 298

Репутация: нет
Всего: 15



arilou, это не ASP приложение это Class library-приложение, которое стучится к удаленным вебсервисам. Насколько я разобрался, просто времени нет вообще  smile , скорее всего NUnit (Фрэймворк для написания тестов) по каким-то причинам не проходит прокси.

Тему, наверно, пока оставлю открытой, хотя в принципе проблема решена. Нам дали VPN-connection без всяких проксей.  smile 

Это сообщение отредактировал(а) Naum - 18.5.2007, 18:15


--------------------
У нас всего два праздника Новый год и ТЯПница.
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
cully
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, cully, mr.DUDA, Exception.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Распределённые приложения и сеть | Следующая тема »


 




[ Время генерации скрипта: 0.1534 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.