Управление сеансом PHP пользователя с помощью Cocoa Touch - PullRequest
1 голос
/ 29 мая 2010

Я создаю приложение для iPhone, которое позволит пользователям входить на веб-сервер PHP, который аутентифицирует пользователя и запускает сеанс.

Моя идея для управления сеансом состоит в создании одноэлементного класса User, который имеет метод sharedLogin. Было бы целесообразно сохранить переменную сеанса в совместно используемом экземпляре, чтобы поддерживать сеанс?

1 Ответ

2 голосов
/ 29 мая 2010

Для интересующихся. Я решил использовать метод NSURLConnection делегат connection:didReceiveResponse:. Затем я обработал заголовки ответа и сохранил файл cookie PHPSESS в одноэлементном NSHttpCookieStorage:

- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response {

    [super connection:connection didReceiveResponse:response];
    NSHTTPURLResponse *urlResponse = (NSHTTPURLResponse *)response;

    NSArray *allCookies = [NSHTTPCookie cookiesWithResponseHeaderFields:[urlResponse allHeaderFields] forURL:[response URL]];

    if ([allCookies count]) {
        [connection cancel];

        [[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookies:allCookies forURL:[response URL] mainDocumentURL:nil];
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...