对http和https简单学习记录
2016-08-31 20:39
344 查看
本文是对http和https简单的理解,也是看博客看书看视频后的笔记吧。内容比较少,以后会继续扩展。
HTTP
使用过的网络库:URLConnection HttpClient OKHttp 它们都封装了HTTP Request的请求。
我们使用时只需要传入进url,请求方式,以及相应的参数和数据。
现在看一下HTTP Request协议格式:
{请求方法}{/相对路径}HTTP/{http版本}\r\n
我们常说的get或post就是上面格式中的请求方法,用字符串表示。
\r\n=CRLF 这是一组。(回车符和换行符)
Header-Name-1:value\r\n
Header-Name-1:value\r\n
...
\r\n
HTTP Request中可以带多个头,当头部结束时会有一个空的 \r\n 表示
Optional Request Body 请求体
这个是可选的,只有post请求才会有的。
上面就是基本格式,一般的网络请求库会帮助我们填写其他内容。
下面再看一下HTTP Response协议格式:
HTTP/{version}{status-code}{message}\r\n
version就是http的版本,status-code状态吗是事先约定好的,message是数据。
接下来是响应头部分,是和请求头一样的:
Header-Name-1:value\r\n
Header-Name-1:value\r\n
...
\r\n
Optional Response Body
提取流中的Header数据:
用到的技术点为:从流中读取一行字符串(即拿到\r\n,结束时会有两个)
HTTPS
https是以安全为目标的HTTP通道,简单讲就是HTTP的安全版。即HTTP下加入SSL层。
https的作用:
内容加密:建立一个信息安全通道,来保证数据传输的安全;
身份认证:确认网站的真实性;
数据完整性:防止内容被第三方冒充或者篡改;
https的劣势:
对数据进行加解密决定了他比http慢;
http与https的区别:
1.https协议需要到CA申请证书。
2.http是超文本传输协议,信息是铭文传输;https是具有安全性的ssl加密传输协议。
3.他俩使用完全不同的连接方式,用的端口也不一样,http是80,https是443。
总结:
https实际就是在TCP层与http层之间加入了SSL/TLS来为上层的安全保驾护航,主要用到对称加密,非对称加密,证书等技术进行客户端与服务器的数据加密传输,最终达到保证整个通信的安全性。
最后分享一个接口调试工具,最近用的很顺手,下面是下载地址:
www.getpostman.com
HTTP
使用过的网络库:URLConnection HttpClient OKHttp 它们都封装了HTTP Request的请求。
我们使用时只需要传入进url,请求方式,以及相应的参数和数据。
现在看一下HTTP Request协议格式:
{请求方法}{/相对路径}HTTP/{http版本}\r\n
我们常说的get或post就是上面格式中的请求方法,用字符串表示。
\r\n=CRLF 这是一组。(回车符和换行符)
Header-Name-1:value\r\n
Header-Name-1:value\r\n
...
\r\n
HTTP Request中可以带多个头,当头部结束时会有一个空的 \r\n 表示
Optional Request Body 请求体
这个是可选的,只有post请求才会有的。
上面就是基本格式,一般的网络请求库会帮助我们填写其他内容。
下面再看一下HTTP Response协议格式:
HTTP/{version}{status-code}{message}\r\n
version就是http的版本,status-code状态吗是事先约定好的,message是数据。
接下来是响应头部分,是和请求头一样的:
Header-Name-1:value\r\n
Header-Name-1:value\r\n
...
\r\n
Optional Response Body
提取流中的Header数据:
用到的技术点为:从流中读取一行字符串(即拿到\r\n,结束时会有两个)
HTTPS
https是以安全为目标的HTTP通道,简单讲就是HTTP的安全版。即HTTP下加入SSL层。
https的作用:
内容加密:建立一个信息安全通道,来保证数据传输的安全;
身份认证:确认网站的真实性;
数据完整性:防止内容被第三方冒充或者篡改;
https的劣势:
对数据进行加解密决定了他比http慢;
http与https的区别:
1.https协议需要到CA申请证书。
2.http是超文本传输协议,信息是铭文传输;https是具有安全性的ssl加密传输协议。
3.他俩使用完全不同的连接方式,用的端口也不一样,http是80,https是443。
总结:
https实际就是在TCP层与http层之间加入了SSL/TLS来为上层的安全保驾护航,主要用到对称加密,非对称加密,证书等技术进行客户端与服务器的数据加密传输,最终达到保证整个通信的安全性。
最后分享一个接口调试工具,最近用的很顺手,下面是下载地址:
www.getpostman.com
相关文章推荐
- MOSS Search学习记录(二):配置爬网并尝试一个简单的搜索
- 数据库的简单操作-学习记录
- 简单的用 Java Socket 编写的 HTTP 服务器应用,帮助学习HTTP协议
- python 学习记录(4)—本金+利息计算及简单的游戏猜测程序
- IOS学习十四:网络之ASIHttpRequest和SBJson简单使用
- 简单的用 Java Socket 编写的 HTTP 服务器应用,帮助学习HTTP协议
- http和https的区别学习
- android http /https协议学习
- 20110215 学习记录2:表单中的get和post区别 & 使用 HttpWebRequest 向网站提交数据
- sqlserver 简单的存储过程学习记录
- ASP.net 中的AJAX学习记录之四 updateProgress控件的简单用法
- 学习和分享一点简单的System.Web.HttpRuntime.Cache的使用经验
- 简单的用 Java Socket 编写的 HTTP 服务器应用,帮助学习HTTP协议(支持POST信息打印)
- 【软件】让Chrome浏览器强制http重定向到https的简单方法
- MOSS Search学习记录(二):配置爬网并尝试一个简单的搜索
- H264学习记录(摘录自http://bbs.chinavideo.org)
- 概念记录 - 学习时遇到的概念和知识的简单记录
- 简单学习记录
- 【Android学习日记】(十三) Http Get使用简单例子
- Chrome浏览器强制http重定向到https的简单方法