Заголовок запроса cookie в Windows.Networking.BackgroundTransfer.BackgroundDownloader не работает - PullRequest
0 голосов
/ 05 декабря 2011

Я не могу загрузить файл со следующим кодом. Серверу требуется файл cookie, который был получен ранее для загрузки файла.

В заголовках запросов, отправляемых на сервер, отсутствует файл cookie, установленный при наблюдении в Fiddler2.

Есть ли какая-то причина, по которой печенье не прилипает к backgrounddownloader? Установка любого другого заголовка, например User-Agent и т. Д., Здесь не показана, но работает нормально.

    Windows.Storage.ApplicationData.current.temporaryFolder.createFileAsync(fileName, Windows.Storage.CreationCollisionOption.replaceExisting).then(function (newFile)
    {
        var uri = Windows.Foundation.Uri(uriString);
        var downloader = new Windows.Networking.BackgroundTransfer.BackgroundDownloader();
        downloader.setRequestHeader("Cookie", cookie);

        // Start the download asynchronously.
        var promise = downloader.startDownloadAsync(uri, newFile);

        // Persist the download operation.
        operation = promise.operation;

        // Assign callbacks associated with the download.
        promise.then(completeCallback, error);
    });

1 Ответ

1 голос
/ 17 января 2012

У меня та же проблема, и я спрашиваю об этом на MSDN. это один ответ, но он все еще не работает для меня, вы можете попробовать следующий код

//twice calling SetRequestHeader
var downloader = new BackgroundDownloader();
downloader.SetRequestHeader("Cookie", "any non-empty string here");
downloader.SetRequestHeader("Cookie", "cookie1=something");

Пожалуйста, обратитесь к http://support.microsoft.com/kb/234486/en для подробного обхода проблемы, хотя это против старого класса XMLHttpRequest.

...