2010-07-22 29 views
6

Một khách hàng không thể sử dụng webpart của tôi vì anh ta đứng sau một máy chủ proxy và họ cần chỉ định tên người dùng và mật khẩu để vượt qua proxy. Tôi có tệp này trong tệp cấu hình của mình ngay bây giờ:Làm cách nào để vượt qua thông tin xác thực trong cài đặt cấu hình ProProxy?

<system.net> 
    <defaultProxy>   
     <proxy usesystemdefault="False" proxyaddress="http://127.0.0.1:8888" bypassonlocal="True" /> 
    </defaultProxy> 
    </system.net> 

Có cách nào để cung cấp tên người dùng và mật khẩu cho cài đặt proxy này không?

Trả lời

12

Tôi không biết cách làm điều này trong phần Mặc địnhProxy của web.config, nhưng bạn chắc chắn có thể làm điều đó từ mã. Hãy thử điều này:

// Get proxy server info from AppSettings section of Web.Config 
var proxyServerAddress = ConfigurationManager.AppSettings[ "proxyServerAddress" ]; 
var proxyServerPort = ConfigurationManager.AppSettings[ "proxyServerPort" ]; 

// Get proxy with default credentials 
WebProxy proxy =new WebProxy(proxyServerAddress, proxyServerPort); 
proxy.Credentials = System.Net.CredentialCache.DefaultCredentials(); 

Web.Config (phần cấu hình):

<appSettings> 
    <add key="proxyServerAddress" value="proxy.myhost.com" /> 
    <add key="proxyServerPort" value="8080" /> 
</appSettings> 

Và sau đó gán proxy cho WebClient bạn đang sử dụng trong webpart của bạn.

EDIT:

Nếu tôi đã làm bài tập ở nhà nhiều hơn, tôi sẽ nhận ra vấn đề của bạn có thể đã được cố định với một thuộc tính: useDefaultCredentials = "true"

<system.net> 
    <defaultProxy useDefaultCredentials="true"> 
     <proxy usesystemdefault="False" proxyaddress="http://127.0.0.1:8888" bypassonlocal="True" /> 
    </defaultProxy> 
</system.net> 
+0

Cảm ơn. Nhưng điều này sẽ cần phải được các thông tin của khách hàng của tôi ... không thực sự chắc chắn tôi có thể nhận được mật khẩu của mình. Dù sao tôi có thể vượt qua điều này? – Prabhu

+0

Mã được cập nhật để nhận thông tin xác thực của người dùng hiện đã đăng nhập. –

+0

Bạn nghĩ rằng tôi có thể thiết lập địa chỉ và cổng trong cấu hình và chỉ thêm dòng proxy.Credentials trong mã? – Prabhu

Các vấn đề liên quan