【问题标题】:Provide Credentials for BackgroundTransferRequest (WP8)为 BackgroundTransferRequest (WP8) 提供凭据
【发布时间】:2013-10-07 12:52:15
【问题描述】:

当我使用 HttpWebRequest 时,我使用以下代码来设置凭据

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(urlToCall);
request.Method = "GET";
request.Credentials = new NetworkCredential(username, pass);

当我在 Windows Phone 8 中使用 BackgroundTransferService 时,我该如何做。

作为参考,我正在使用以下内容。
http://msdn.microsoft.com/en-us/library/windowsphone/develop/hh202955%28v=vs.105%29.aspx
http://msdn.microsoft.com/en-us/library/windowsphone/develop/hh202959%28v=vs.105%29.aspx

*编辑: 身份验证方法是摘要 这是我使用浏览器下载文件时在授权标头中得到的内容。

摘要用户名="adf", realm="bcd", nonce="XXXXXXXXX", uri="/ans/1268e52399.txt", algorithm=MD5, response="XXXXXXXXXXXXXXX", qop=auth, nc=00000001 , cnonce="XXXXXXXXXXXX"

【问题讨论】:

    标签: c# windows-phone-8 networkcredentials background-transfer


    【解决方案1】:

    很遗憾,BackgroundTranserService 不支持此功能。一种可能的解决方案可能是为您的请求手动创建一个标头,如下所示:

    var credentials = new UTF8Encoding().GetBytes(username + ":" +password);
    
    var transferRequest = new BackgroundTransferRequest(transferUri);
    
    transferRequest.Headers["Authorization"] ="Basic " + convert.ToBase64String(credentials);
    

    很遗憾,我目前无法对此进行测试,请尝试一下,然后告诉我您的进展情况。

    【讨论】:

      猜你喜欢
      • 2021-02-15
      • 1970-01-01
      • 1970-01-01
      • 2015-05-03
      • 1970-01-01
      • 1970-01-01
      • 2012-06-26
      • 2013-02-13
      • 1970-01-01
      相关资源
      最近更新 更多