Używam .NET 2.0, aby wykonać proste wywołanie usługi. Z większości maszyn nie muszę robić nic specjalnego. Jednak jeden klient znajduje się w sieci firmowej, która korzysta ze skryptu autoconfig proxy. Prawie wszystko, co mogę znaleźć (np. http://msdn.microsoft.com/en-us/magazine/cc300743.aspx#S3) mówi mi, że nie powinienem robić nic. .NET odczyta ustawienia proxy z rejestru i "po prostu działa". Tak, jasne.Jaki jest właściwy sposób obsługi skryptu autokonfiguracji proxy w celu wywołania usługi sieciowej w .net?
Jeśli klient korzysta z przeglądarki, aby najpierw odwiedzić adres URL usługi internetowej, to moje połączenie z serwisem działa. Jednak po pewnym czasie połączenia z serwisem przestają działać z błędem 407 (Proxy Authentication Required).
Próbowałem jawnie ustawić proxy (zgodnie z sugestią Get Proxy configuration before accessing an external webservice (.NET 2.0)), ale nie miałem szczęścia.
Znalazłem ten MS knowledgebase article z informacjami na temat wywoływania WinHttpGetProxyForUrl w WinHTTP.DLL. Jeśli wyłączysz ustawienie autokonfiguracji z rejestru i użyje go w wywołaniu WinHttpGetProxyForUrl, wydaje się, że działa, ale wydaje się, że po prostu nie ma potrzeby, aby tam iść. Czy ktokolwiek zna "właściwą drogę", aby uzyskać .NET do używania domyślnego skryptu autoconfig proxy IE? Dzięki.
Znalazłem to pytanie SO (http://stackoverflow.com/questions/202547/how-do-i-find-out-the-browsers-proxy-settings) z informacją o funkcji WinHttpGetIEProxyConfigForCurrentUser(). To powinno przynajmniej pozwolić mi uniknąć bezpośredniego dostępu do rejestru. –