NSHttpURLResponse содержит другие значения на устройстве, чем на симуляторе из приложения xamarin для iOS

Я делаю приложение для iPhone на xamarin. Я столкнулся с очень непонятной проблемой. Я делаю NSURLConnection к ссылке, чтобы получить информацию о куки из заголовка и использую этот куки для открытия других защищенных ссылок. В соединении: didReceiveResponse: метод, NSHttpURLResponse содержит поле "Set-Cookie" для извлечения. Я получаю правильную информацию заголовка при запуске приложения на симуляторе. Но на устройстве тот же код не возвращает полный заголовок с cookie. Это мешает мне звонить и по другим ссылкам. Если я запускаю контактную ссылку с тем же URL-адресом из собственного примера приложения в target-c, я получаю правильную информацию заголовка. Это только не работает на устройстве из приложения xamarin.

Код для создания соединения

NSMutableUrlRequest request = new NSMutableUrlRequest(url);
request.HttpMethod = "GET";
request.ShouldHandleCookies = true;
request.Headers = header;
URLConnDelegate connectionDelegate = new URLConnDelegate (this);
NSUrlConnection connection = new NSUrlConnection (request, connectionDelegate, true);

И код для получения ответа

public override void ReceivedResponse (NSUrlConnection connection, NSUrlResponse response)
    {
        NSHttpUrlResponse httpResponse = response as NSHttpUrlResponse;
        Console.WriteLine (httpResponse.AllHeaderFields);
        NSString cookieStr = httpResponse.AllHeaderFields.ValueForKey (new NSString ("Set-Cookie")) as NSString;
        caller.setCookie (cookieStr);
        NSMutableUrlRequest request = new NSMutableUrlRequest (new NSUrl(caller.urlString));
        caller.loadRequest (request);
    }

Поле set-cookie не появляется, когда я запускаю его с устройства.

Любая помощь приветствуется.

Спасибо

0 ответов

Другие вопросы по тегам