博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS 中UIWebView的cookie
阅读量:5150 次
发布时间:2019-06-13

本文共 2062 字,大约阅读时间需要 6 分钟。

有关cookie是什么,大家可以自行百度,本文我获得cookie的目的是得到一个userID。

下面的是代码。

- (void)getUserIDFromCookie{    NSHTTPCookieStorage *sharedHTTPCookieStorage = [NSHTTPCookieStorage sharedHTTPCookieStorage];    NSArray *cookies = [sharedHTTPCookieStorage cookiesForURL:urlStr];        NSEnumerator *enumerator = [cookies objectEnumerator];    NSHTTPCookie *cookie;    while (cookie = [enumerator nextObject]) {        NSLog(@"%@,%@", [cookie name], [cookie value]);    }}

 由此得到的cookie,大家可以根据cookie里面的内容进行遍历,来得到自己想要的值。

对于ios 来说 NSHTTPCookieStorage 会存储APP自身访问所有url的cookie,可以用domain为标志来获取自己所需要的cookie。需要注意的是,NSHTTPCookieStorage存储的cookie在过期后会自动删除,如用户手动调整时间超过期时间则系统也会自动删除,因此某些业务逻辑需要注意。

 

设置cookie:

- (void)setCookie{    NSMutableDictionary *cookieProperties = [NSMutableDictionary dictionary];//    设置 cookie 的参数    [cookieProperties setObject:@"cookie_user" forKey:NSHTTPCookieName];    [cookieProperties setObject:uid forKey:NSHTTPCookieValue];    [cookieProperties setObject:@"xxx.xxx.com" forKey:NSHTTPCookieDomain];    [cookieProperties setObject:@"/" forKey:NSHTTPCookiePath];    [cookieProperties setObject:@"0" forKey:NSHTTPCookieVersion];    [cookieProperties setObject:[[NSDate date] dateByAddingTimeInterval:2629743] forKey:NSHTTPCookieExpires];        NSHTTPCookie *cookieuser = [NSHTTPCookie cookieProperties];    [[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookie:cookieuser];}

 

接下来说下清除所有cookie:

NSHTTPCookie *cookie;NSHTTPCookieStorage *sharedHTTPCookieStorage = [NSHTTPCookieStorage sharedHTTPCookieStorage]; for (cookie in [storage cookies]) {     [sharedHTTPCookieStorage deleteCookie:cookie]; } // 缓存 清除 [[NSURLCache sharedURLCache] removeAllCachedResponses];

 清除某个url下的cookie:

- (void)deleteCookie{    NSHTTPCookie *cookie;        NSHTTPCookieStorage *sharedHTTPCookieStorage = [NSHTTPCookieStorage sharedHTTPCookieStorage];        NSArray *cookieAry = [sharedHTTPCookieStorage cookiesForURL: [NSURL URLWithString:urlStr]];    for (cookie in cookieAry){        [sharedHTTPCookieStorage deleteCookie:cookie];    }}

 

参考文章:

转载于:https://www.cnblogs.com/peaker-wu/p/5326389.html

你可能感兴趣的文章
kubernetes_book
查看>>
OpenFire 的安装和配置
查看>>
侧边栏广告和回到顶部
查看>>
https://blog.csdn.net/u012106306/article/details/80760744
查看>>
海上孤独的帆
查看>>
处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“Manag
查看>>
01: socket模块
查看>>
mysql触发器
查看>>
淌淌淌
查看>>
web页面实现指定区域打印功能
查看>>
win10每次开机都显示“你的硬件设置已更改,请重启电脑……”的解决办法
查看>>
C++有关 const & 内敛 & 友元&静态成员那些事
查看>>
函数积累
查看>>
Swift 入门之简单语法(六)
查看>>
shim和polyfill有什么区别
查看>>
〖Python〗-- IO多路复用
查看>>
栈(括号匹配)
查看>>
Java学习 · 初识 面向对象深入一
查看>>
源代码如何管理
查看>>
vue怎么将一个组件引入另一个组件?
查看>>