zoukankan      html  css  js  c++  java
  • AFNetworking 保存Cookie Session 和 Webview 共享Cookie

    1, 请求并携带SessionId, 代码如下:

    //当请求成共后调用如下代码, 保存Cookie
    NSArray *cookies = [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookiesForURL: [NSURL URLWithString:kServerAddress]];  
    NSData *data = [NSKeyedArchiver archivedDataWithRootObject:cookies];  
    [[NSUserDefaults standardUserDefaults] setObject:data forKey:kUserDefaultsCookie]; 
    //请求前,设置上次保存的Cookie
    NSData *cookiesdata = [[NSUserDefaults standardUserDefaults] objectForKey:kUserDefaultsCookie];  
    if([cookiesdata length]) {  
      NSArray *cookies = [NSKeyedUnarchiver unarchiveObjectWithData:cookiesdata];  
      NSHTTPCookie *cookie;  
        for (cookie in cookies) {  
        [[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookie:cookie];  
      }  
    } 

    通过以上设置, 使用 UIWebView loadRequest 方法load NSURLRequest 可以共用 Cookie.

    2, 另一个版本:

      NSArray *cookies = [[NSHTTPCookieStorage sharedHTTPCookieStorage]cookies];  
          
      NSString *signature = @"";  
      NSString *userId = @"";  
      NSString *JSESSIONID = @"";  
      for (NSHTTPCookie *cookie in cookies) {  
        if ([cookie.name isEqualToString:@"JSESSIONID"]) {  
          JSESSIONID = cookie.value;  
        }  
        //其他Cookie值 
      }  
      NSString *cookieStr = [NSString stringWithFormat:@"JSESSIONID=%@;...",JSESSIONID,..];  
      [manager.requestSerializer setValue:cookieStr forHTTPHeaderField:@"Cookie"];
    转载请注明出处:http://duwei.cnblogs.com/
  • 相关阅读:
    原码, 反码, 补码的基础概念和计算方法.
    QoS in RoCE
    TCP拥塞控制算法之NewReno和SACK
    intel xeon家族介绍
    Intel 处理器架构演进 转
    IP报文头详解
    高性能网络服务器编程:为什么linux下epoll是最好,Netty要比NIO.2好?
    tcp拥塞控制 tahoe reno new reno sack
    TCP/IP详解--拥塞控制 慢启动 快恢复 拥塞避免
    LTTng 简介&使用实战
  • 原文地址:https://www.cnblogs.com/duwei/p/4519729.html
Copyright © 2011-2022 走看看