2010-06-12 59 views
2

我有下面的代碼:Silverlight 4中的WebRequest,SSL和證書

public void StartDataRequest() 
    { 
     WebRequest.RegisterPrefix("https://", System.Net.Browser.WebRequestCreator.ClientHttp); 

     WebClient myService = new WebClient 
           { 
            AllowReadStreamBuffering = true, 
            UseDefaultCredentials = false, 
            Credentials = new NetworkCredential("username", "password") 
           }; 
     myService.UseDefaultCredentials = false; 

     myService.OpenReadCompleted += this.RequestCompleted; 
     myService.OpenReadAsync(new Uri("Url")); 
    } 

    public void RequestCompleted(object sender, System.Net.OpenReadCompletedEventArgs e) 
    { 
     // ... 
    } 

現在這個完美的作品,比如說,微博。但是當我嘗試使用另一個https服務時,我收到安全錯誤。

這可能是因爲我嘗試連接的網站也沒有crossdomain.xml。有沒有辦法繞過這個?或者文件真的需要在那裏? 謝謝。

回答

2

是服務器必須具有ClientAccessPolicy.xml文件或crossdomain.xml文件。我知道解決這個問題的唯一方法是讓您自己的服務器端服務充當代理。