<
网络相关
>
上一篇

git常用命令
下一篇

Welcome to Jekyll!

海纳百川有容乃大 壁立千仞无欲则刚.

网络相关知识

局域网(通常是内网)的地址分为A、B、C三类:

A类:10.0.0.0-10.255.255.255 B类:172.16.0.0.-172.31.255.255 C类:192.168.0.0-192.168.255.255

http和https:用于web浏览器和网站服务器之间传递信息

http:使用超文本传输协议,明文传输;而https则是使用具有安全性的ssl加密传输协议; https:需要ca认证证书,一般不免费,需要付钱 https比http安全,http链接是无状态的,而https链接需要SSL和http构建的加密身份认证的网络 安全协议。

跨域访问;A网站的js试图访问B网站

可以使用jsonp方式,只支持http的get请求。

http协议

如图:image 主要是客户端向服务器发送请求,服务器对请求做出响应把结果给客户端。(一般客户端为浏览器)

http请求

(1) http请求主要包括:请求行、请求头、空行、请求体这四部分内容。 如图:image (1.1) http响应主要包括:状态行、消息报头、空行、响应报文。 如图:image

(2)post请求携带报文编码: body:%7B%22head%22%3A%7B%22requestId%22%3A%221111111111%22%2C%22secretId%22%3A%22ec0001%22%2C%22productCode%22%3A%22HECHECK00001%22%2C%22signature%22%3A%226JWj6bGik9bX63Z9VyAn3Oz9s40=%22%7D%2C%22param%22%3A%22TQO68j54uY3W3T4ahDVyNPu5W277zgzthQbgS2ftHDcbXOphjmXd+5TPzs%2FYbXFR%2Fo2IoNaNNzzbxoShy0mabA%3D%3D%22%7D 这种格式,时被unicode编码了,需要使用URLDecoder.decode(body, "utf-8")解码成明文格式 resJson:{“head”:{“requestId”:”1111111111”,”secretId”:”ec0001”,”productCode”:”HECHECK00001”,”signature”:”6JWj6bGik9bX63Z9VyAn3Oz9s40=”},”param”:”TQO68j54uY3W3T4ahDVyNPu5W277zgzthQbgS2ftHDcbXOphjmXd 5TPzs/YbXFR/o2IoNaNNzzbxoShy0mabA==”}

(3)request.getParameter(“userName”)获取URL中传递的参数 如果url中的内容无userName属性,request.getParameter(“userName”)获得的值是null, 如何url中的内容有userName属性,但是userName没有值,request.getParameter(“userName”)获得的是”“空字符串

(4)get请求参数主要拼接到url中,通过?拼接 注:post请求也可以将参数通过?拼接到url中传递

(5)http协议最基本有四种传递方法:GET、DELETE、UPDATE、POST post和get方法的区别: a.get方法传递参数拼接到url中,暴露在地址栏的中,所以get方法传递数据不如post方法不安全 b.get方法的url长度有限制,所以传递的数据长度也是有限制的,而post没有 c.由于两种方法的传递数据方式不同,所以获取值得方法也是不同 d.get方法传递的参数以?连接,拼接在url地址后面,而post方法传递的参数是在htpp包的body里面。

TCP与UDP

TCP需要建立连接、面向字节流、对系统资源要求较高、能保证数据传输的正确性和顺序、顺序慢、适合传输大量数据(eg:HTTP、HTTPS、FTP等传输文件的协议) UDP不需要建立连接、面向报文、对系统资源要求较少、不能保证顺序性且容易丢包、顺序快、适合传输少量数据(eg:发送QQ视频、QQ电话)

Top
Foot