Silverlight 4 WebRequest,SSL和凭据

时间:2010-06-12 14:13:09

标签: c# silverlight cross-domain

我有以下代码:

    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)
    {
        // ...
    }

现在这对Twitter来说非常有效。但是当我尝试使用另一个https服务时,我收到了一个安全错误。

这可能是因为我尝试连接的网站也没有crossdomain.xml。有没有办法绕过这个?或者文件真的需要存在吗? 感谢。

1 个答案:

答案 0 :(得分:2)

是的,服务器必须具有ClientAccessPolicy.xml文件或crossdomain.xml文件。我知道解决这个问题的唯一方法是让你自己的服务器端服务充当代理。