第十三天笔记Cookie

计算机重要的四个内容

  • 数据结构

    数据存储的结构及逻辑的体现,以及相关数据结构之间的操作(算法)

  • 操作系统

    windows(dos命令)、linux(指令操作)

  • 计网

    网络通信就是指代一台计算机利用传播介质传播到另一台计算机的数据通信过程

    网络应用 宽带拨号软件

    传播介质 网线 wifi

  • 计算机组成原理

    冯诺依曼(主板,cpu,内存条,显卡,硬盘)

计算机网络

概述:

一台计算机利用传播介质传播到另一台计算机的数据通信过程

主要的两个内容

  • 网络应用 宽带拨号软件

  • 传播介质 网线 wifi

  • 协议

    网络模型图

    • 物理层 硬件支持

    • 数据链路层 数据传输的接口规范

    • 网络层 网络通信

      ip协议

    • 传输层 主要协议支持

      TCP协议 一对一传输 (必须建立连接)

      UDP协议 丢包的形式(可以一对多 一对一 多对多 多对一)

    • 应用层相关的内容(应用层 表示层 会话层)相关协议都是来自于对应底层的支持

TCP和UDP的区别

TCP必须建立连接(只能1对1)他是以字节流的形式发送数据的 他的头有64个字节

UDP 不一定要有连接 通过发送数据包的形式发送数据 他的头只有8个字节

应用层相关的协议

  • http 超文本传输协议 使用明文传输

  • https 超文本传输协议 使用密文传输(ssl进行加密,采用了对称加密及非对称加密 为了其安全还提供对应的CA证书)

http有版本差距 http1 http2

http1 以文件传输形式进行传输(一个请求一个连接)

http2 以字节流的形式来进行传输(多路复用 一个连接支持多个请求 同域名下只有一个连接)

http

概述:

http称为超文本传输协议 一般用于网络传输(一般是对应的数据交互) 一般交互的数据为JSON格式数据(字符串)、XML(类似于html)。http是基于TCP之上的协议

数据交互的过程(TCP的三次握手四次挥手)

  • 建立连接的过程称为三次握手

    客户端先发送一个消息 告诉他我要建立连接

    服务端接收到 我已经准备好了

    客户端收到 那么来建立连接

  • 断开连接的过程称为四次回收

    客户端发送请求断开连接

    服务端接收到请求断开连接

    服务端断开连接

    客户端断开连接

http的对应的特性

无状态 当前a发送一个请求到b b接收到以后 不知道是 a 没有记忆能力

无连接 请求发送完建立连接后会立马断开

长连接 短链接

解决对应的无状态问题

主要是通过对应的session(存储在服务端的)来解决的 每个连接的建立都会存在一个对应的sessionID 这个sessionID 是由服务端派发给对应的浏览器的。连接断开以后对T应的sessionID就不在了,为了解决这个问题他就是存储在浏览器上, 每次请求都会带上这个sessionID 在浏览器上用于存储sessionID容器就叫cookie 如果我i对应的服务器关闭那么对应的存储sessionID就没有意义了,所以cookie也就没有了意义,那么cookie 既然存储在对应的浏览器上那么对应的他不应该被销毁, 那么时间一长对应的cookie 就会越来越大,这个点对我们是不好的。所以为了避免这一点他将我们的cookie和session的生命周期做了绑定也就是说对应的cookie的生命周期和session的生命周期是一样的。session的生命周期是连接一断开他就销毁了(浏览器一关闭就销毁了)

cookie

cookie的结构

cookie 里面存储的内容是一个字符串

// cookie 的名字cookie的值
// 过期时间 默认浏览器关闭销毁
// domain 跨域的地址设置
// path 什么路径下才携带cookie
// security 是否安全 是否为https
key=value;expires=Date;domain=地址;path=路径;security
 //访问cookie
       console.log(document.cookie);
       // cookie的添加
       document.cookie=`name=张三;expires=${new Date()};domain=http://192.0.0.1;path=/hello;secure`

第三方的cookie.js库

JSON格式

JSON格式是一种数据交互格式,一般后台给我们返回的都是json格式的字符串,但是在js中可以将json格式的字符串变为对象

交互图(主要JSON格式数据进行交互)

后端主要提供数据(数据处理(业务)三层模型)

前端主要是负责渲染(部分业务前移 三层模型(业务分离))

后端给我们返回JSON格式字符串前端进行解析,然后进行数据渲染

主要表现形式(数组和对象的多级嵌套)

  • 对象

  • 数组

示例

var json={likes:[{name:'苹果',price:50}],age:18}
console.log(json.likes[0].price)
var jsonArr={name:'张三'},{name:'李四'},{name:'王五'}
console.log(jsonArr[2].name)
 

第十三天笔记Cookie的更多相关文章

  1. 安卓第十三天笔记-服务(Service)

    安卓第十三天笔记-服务(Service) Servcie服务 1.服务概念 服务 windows 服务没有界面,一直运行在后台, 运行在独立的一个进程里面 android 服务没有界面,一直运行在后台 ...

  2. 笔记-cookie参数

    笔记-cookie参数 cookie各个参数详解 定义和用法 setcookie()函数向客户端发送一个 HTTP cookie. cookie是由服务器发送到浏览器的变量.cookie 通常是服务器 ...

  3. 【读书笔记--cookie】JavaScript权威指南 第六版

    遇到一些问题需要用cookie处理,正好读了一下犀牛书关于cookie的介绍,整理了一些笔记. cookie是指web浏览器存储的少量数据,同时它是与具体的web页面或者站点相关的. cookie数据 ...

  4. [JavaEE笔记]Cookie

    引言 由于 Http 是一种无状态的协议,服务器单从网络连接上无从知道客户身份. 会话跟踪是 Web 程序中常用的技术,用来跟踪用户的整个会话.常用会话跟踪技术是 Cookie 与 Session. ...

  5. 重温Servlet学习笔记--Cookie对象

    首先要了解cookie必须得先了解http协议,,Cookie是http协议指定的,先由服务器保存cookie到浏览器,在下次浏览器请求服务器时把上次请求得到的cookie归还给服务器,cookie以 ...

  6. Web客户端数据存储学习笔记——Cookie

    今天对登录访问的安全以及web客户端存储做了一些大致的学习,决定在这方面加深理解,记录在博客里.第一个接触到的是Cookie... WHAT? WHY? HOW? 在学习cookie的使用时发现其名称 ...

  7. Web安全测试学习笔记(Cookie&Session)

    一,Session:含义:有始有终的一系列动作\消息1, 隐含了“面向连接” 和“保持状态”两种含义2, 一种用来在客户端与服务器之间保持状态的解决方案3, 也指这种解决方案的存储结构“把××保存在s ...

  8. javascript笔记——cookie解析

    JavaScript中的另一个机制:cookie,则可以达到真正全局变量的要求. cookie是浏览器 提供的一种机制,它将document 对象的cookie属性提供给JavaScript.可以由J ...

  9. 20151224jquery学习笔记---cookie插件

    hello,祝自己平安夜快乐. Cookie 是网站用来在客户端保存识别用户的一种小文件.一般来用库可以保存用户登录信息.购物数据信息等一系列微小信息.一. 使用 cookie 插件官方网站: htt ...

  10. Servlet 笔记-Cookie 处理

    Cookie 是存储在客户端计算机上的文本文件,并保留了各种跟踪信息. 识别返回用户包括三个步骤: 服务器脚本向浏览器发送一组 Cookie.例如:姓名.年龄或识别号码等. 浏览器将这些信息存储在本地 ...

随机推荐

  1. 安卓开发 java控制UI

    创建布局管理器对象 设置背景 设置活动界面 按钮事件 按钮显示

  2. Hexo系列(二):Hexo安装

    作者:独笔孤行 官网:​​ ​http://anyamaze.com​​ 公众号:云实战 1.安装nodejs和npm yum install epel-release -y yum install ...

  3. C#/JS 压缩到指定大小的图片 (内存不足问题修改)

    //因为浏览器安全问题,无法获取上传图片地址,需要先存一遍然后再获取地址作参数上传 var des = CompressImage(@"C:\Users\PC\Pictures\测试\165 ...

  4. 基于C++的OpenGL 08 之基础光照

    1. 引言 本文基于C++语言,描述OpenGL的基础光照 前置知识可参考: 基于C++的OpenGL 07 之颜色 - 当时明月在曾照彩云归 - 博客园 (cnblogs.com) 笔者这里不过多描 ...

  5. oracle快速将表缓存到内存

    共有2种方法: 1) alter table fisher cache; 2) alter table fisher storage(buffer_pool keep); --取消缓存 1) alte ...

  6. sqlite3数据库Linux 系统移植和使用

    sqlite3数据库是一个小型的数据库,当数据量不大,要求不是特别高的时候,是个不错的选择. 在Linux上移植和使用也非常的方便. 本示例是在硬件全志r528 .linux5.4 上验证的. 移植操 ...

  7. [C#]问号?和双问号??

    [C#]问号?和双问号?? 如何使用 问号?表示该变量可以为空 int?; 等价于:int? = null; 双问号??表示如果为双问号左边的变量为null,则取右边的值,否则取左边变量的值 c=a? ...

  8. maven打包找不到本地jar包的解决方法

    有时候我们在项目中会引入一些本地jar包,在maven打包时会找不到这些jar,我们需要在pom.xml中的 <pluginManagement> <plugins> < ...

  9. mfc拷贝到我的电脑出现的问题

    拿到工程解压打开,霍,挺好 往下面翻了翻看到了这个 再怎么错误,怎么会没有string呢?看了看头文件,包含的有,所以 我去找了一下string.h的位置 项目->属性->VC++目录-& ...

  10. 学编程很盲目?不会代码?你可以来瞧瞧这本。是一本难得的Python 入门手册。

    Python语言及其应用,pdf高清免费下载地址 获取码:d414 内容简介  · · · · · · 本书介绍Python 语言的基础知识及其在各个领域的具体应用,基于最新版本3.x.书中首先介绍了 ...