iOS之Cookie
iOS之Cookie使用
简介
概念:Cookie中文名称叫做“小型文本文件”,指某些网站为了辨别用户身份而存储在用户本地终端上的数据(通常经过加 密)。 Web服务器可以用过Set-Cookie或者Set-Cookie2 HTTP头部设置Cookie.
- 分类:Cokkie总是保存在客户端中,按在客户端中存储的位置,可分为:
内存Cookie:内存Cookie由浏览器维护,保存在内存中,浏览器关闭后就消失了,其存在时间是短暂的。
硬盘Cookie:硬盘Cookie保存在硬盘里面,有一个过期时间,除非用户手工清理或者到了过期时间,硬盘Cookie不会被清除,其存在时间是长期的。所有按照存在时间,分为非持久Cookie和持久Cookie。
- 用途:
- 因为HTTP协议是无状态的,即服务器不知道用户上一次做了什么,这严重阻碍了交互式Web应用程序的时间,有了Cookie,服务器可以设置或者读取Cookie中包含的信息,借此维护用户跟踪服务器会话中的状态。
- 另一种用途就是当我们登录一个网站的时候经常会勾选“下次自动登录”,那么下次就可以不用登录了。其实就是第一次登录时,服务器发送了包含登录凭据的Cookie到用户的硬盘上。第二次登录的时候(如果Cookie没有到期)浏览器会发送该Cookie,服务器验证凭据,因此不用输入用户名和密码就可以让用户登录了。
- 缺陷
Cookie会被附加在每个HTTP请求中,所以无形中增加了流量
HTTP请求Cookie是明文传递,安全性无法保障
- Cookie大小有限制,一般是4kb左右
Cookies的替代品
我们可以在与服务器传输数据的时候,在地址后面拼接一个唯一的查询串,让服务器识别是否合法用户
以上是对Cookie的简单介绍,多半是参考百度百科以及维基百科了解到的基础知识,下面开始进入正题:iOS中Cookie的使用。
iOS之Cookie的更多相关文章
- iOS的Cookie存取
当前一些公司为了快速出一款app,很多时候采用UINavigationController+WebView或者NavigationController+UITabbarVC+WebView的方式,这样 ...
- iOS中Cookie的管理
平常的app开发中只调用Rest Api可能用不到Cookie,但是当要在App中内嵌WebView就有可能要用到.最近用到了这一块的东西,总结一下. Cookie原理 关于cookie的原理简单描述 ...
- 【读书笔记】iOS网络-Cookie
Cookie是HTTP协议在首个版本之后加入的一个重要组件.它向服务器提供了追踪会话状态的能力,同时又无须维持客户端与服务器之间的连接.在浏览器客户端,Cookie值是由服务器通过请求提供的,,然后被 ...
- IOS - 打印COOKIE中的 CRFSToken
NSHTTPCookie 在iOS中使用NSHTTPCookie类封装一条cookie,通过NSHTTPCookie的方法读取到cookie的通用属性. - (NSUInteger)version; ...
- iOS保存cookie的方法
SURLRequest*request =[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.google.com/ ...
- iOS关于Cookie验证登录状态
1.第一次进入应用,登录获取Cookie,此时如果用到的是AFN去获取接口数据,Cookie已经写入了,所以无需处理,每次请求的时候,会自动将该cookie传给后台去验证 2.将Cookie缓存到本地 ...
- iOS swift cookie创建存储移除
保存网络请求的cookies,并存储到UserDefaults中 //保存COOKIES static func saveCookies(for urlStr: String){ if let url ...
- iOS使用cookie
// // ViewController.m // cookie // // Created by 谭启宏 on 16/3/4. // Copyright © 2016年 tqh. All right ...
- iOS:项目中用到的Cookie
1.介绍: 做了这么长时间开发,Cookie真是用的不多,可是现在不一样了,这次的项目我用到了Cookie.其实,Cookie的使用在项目中愈加的频繁,一般情况下,提供的接口是用Cookie来识别用户 ...
随机推荐
- 模拟MessageBox
原文:<模拟MessageBox> Posted on 2014/01/07 ======================================================= ...
- android自定义之 5.0 风格progressBar
最近做项目,用到了ProgressBar ,就想到了要使用Android5.0 的效果,就随手实现了一下. 效果图: 大概的思路: 1. 圆圈通过Canvas去绘制 2.圆圈的动画通过Animator ...
- bootstrap插件学习-bootstrap.carousel.js
先看bootstrap.carousel.js的结构 var Carousel = function (element, options){} //构造器 Carousel.prototype = { ...
- Vex – 超轻量!可以轻松自定义的现代风格弹窗插件
Vex 的独特之处在于现代风格设计,能够自定义弹出模式.皮肤.Vex 超轻量,压缩后不到 2KB,提供了简洁的 API,可以根据自己的项目需要快速自定义.支持在移动设备上使用,测试通过的浏览器:IE8 ...
- [python]pip常用命令(转载)
用阿里云服务器,使用pip安装第三方库的时候卡的要死.所以我就想pip能不能安装本地的包. 找到了这篇博客: http://me.iblogc.com/2015/01/01/pip%E5%B8%B8% ...
- 连接不上mysqlworkbench问题解决方法
连接mysqlworkbench出现如下提示: 查看ip 加入host的范围 mysql> select user,host from mysql.user;+--------- ...
- [C#] 谈谈异步编程async await
为什么需要异步,异步对可能起阻止作用的活动(例如,应用程序访问 Web 时)至关重要. 对 Web 资源的访问有时很慢或会延迟. 如果此类活动在同步过程中受阻,则整个应用程序必须等待. 在异步过程中, ...
- iOS常用的几种数据存储方式
之前由于刚入行不久,对数据持久化不是很了解,尤其是用数据库存储大量数据的操作.经过摸索就在此总结一下,方便以后查阅 下面就简单介绍一下: 1.NSUserDefaults 感觉最常用的小量数据,属性, ...
- eclipse新建maven项目(1)
首先看一下eclipse版本,我用的是最新版Mars2. 下载地址自行搜索关键字:“eclipse官网”即可,注意下版本,32bit or 64bit. maven插件以及svn等相关插件安装设置问题 ...
- python flask应用部署
失败版本:flask+uwsgi ini配置文件 [uwsgi] callable = app ;//程序内启用的application变量名 home = /home/jcuan/code/pyth ...