.net - Windows Phone 7,通过身份验证通过 ssl 下载 xml

标签 .net silverlight windows-phone-7

我正在尝试从我的提供商处下载文件。

网址受基本用户名和密码保护,所有内容均通过 ssl 发送。

所以我尝试这样做:

        WebClient proxy = new WebClient();

        proxy.DownloadStringCompleted += (o, dscea) => System.Diagnostics.Debugger.Break();
        proxy.Credentials = new NetworkCredential("username", "password");
        proxy.DownloadStringAsync(new Uri("https://..../.../data.xml"));

如您所见,我尝试验证。 url 是正确的,当我尝试从 twitter 下载东西时,代码可以工作。

当我在 Firefox/Internet Explorer 中输入 URL 时,该 URL 有效

我忘记连接到这个 xml 文件是什么?

我得到的错误如下:

我使用的是 Visual Studio 2010(完整版,不是 Express),并且 CTP 刷新 :)

最佳答案

这似乎已在 Beta 工具版本中得到修复。我不得不直接设置 Authorization header ,因为 .NET 没有按照您可能期望的方式处理基本身份验证。这是我的工作代码片段:

var client = new WebClient();

var token = Convert.ToBase64String(Encoding.UTF8.GetBytes(string.Format("{0}:{1}", username, password)));
var authHeader = string.Format("Basic {0}", token);

client.Headers["Authorization"] = authHeader;
client.DownloadStringCompleted += (s, e) =>
{
   // handle result
};

client.DownloadStringAsync(url);

关于.net - Windows Phone 7,通过身份验证通过 ssl 下载 xml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2763500/

相关文章:

silverlight - 从 ItemsControl.ItemTemplate 绑定(bind)到 View 模型属性

wpf - 如何将Silverlight项目或控件转换为WPF

c# - 如何使用WP7同步读取网页

c# - 使用可观察的地理坐标集合在 WP7 的 bing map 上绘制路线

.net - .NET中的生产者消费者链和线程调度

.net - 在Delphi中销毁COM对象

.net - 无架构数据缓存:NoSQL或其他替代方案?

.net - 使用 .NET 连接到 MySQL 数据库时出错

c# - 指南针通常向我指示北方。但我想从中展示另一种方式(?)

c# - 在 Windows Phone 7 中获取 EXIF 标签