URL 格式说明

一、URL结构

url:http://www.fishbay.cn:80/mix/76.html?name=kelvin&password=123456#first
1.协议部分:
  http 网页用http协议,//为分隔符

2.域名部分:
  发送请求时,需要向DNS服务器解析ip ,为了优化请求,可以直接用IP作为域名部分使用

3.端口部分:
  域名后面的80表示端口,和域名之间用:分隔,端口不是一个URL的必须的部分。如果端口是80,也可以省略不写

4.虚拟目录部分:
  从域名的第一个/开始到最后一个/为止,是虚拟目录的部分。其中,虚拟目录也不是URL必须的部分,本例中的虚拟目录是/mix/

5.文件名部分:
  从域名最后一个/开始到?为止,是文件名部分;如果没有?,则是从域名最后一个/开始到#为止,是文件名部分;如果没有?和#,那么就从域名的最后一个/从开始到结束,都是文件名部分。本例中的文件名是76.html,文件名也不是一个URL的必须部分,如果没有文件名,则使用默认文件名

6.锚部分:
  从#开始到最后,都是锚部分。本部分的锚部分是first,锚也不是一个URL必须的部分

7.参数部分:
  从?开始到#为止之间的部分是参数部分,又称为搜索部分、查询部分。本例中的参数是name=kelvin&password=123456,如果有多个参数,各个参数之间用&作为分隔符。

××://  ××:××    /××     /××  ?××&×× #××
协议   域名:端口   虚拟目录  文件名  参数 锚

二、Request http请求

请求行、请求头部、空行和请求数据 四部分

GET /mix/76.html?name=kelvin&password=123456 HTTP/1.1
Host: www.fishbay.cn
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,/;q=0.8
Accept-Encoding: gzip, deflate, sdch
Accept-Language: zh-CN,zh;q=0.8,en;q=0.6

1.请求行;
get请求类型,访问资源 协议版本
2.请求头部:
host 请求的目的地(主机域名)
user-agent是客户端信息,检查客户端浏览器类型
3.空行:
请求头后面必须有一个空行
4.请求数据:

三、状态码

1.1xx: 指示信息–表示请求已接收,继续处理
2.2xx: 成功–表示请求已被成功接收、理解、接受
3.3xx: 重定向–要完成请求必须进行更进一步的操作
4.4xx: 客户端错误–请求有语法错误或请求无法实现
5.5xx: 服务器端错误–服务器未能实现合法的请求

200[ok] :客户端请求成功
400[bad request] : 客户端请求语法错误,不被服务器理解
401[unauthorized] :请求未授权
403[dorbidden] :服务器收到请求但是拒绝提供服务
404[not found] :请求资源不存在, eg输入错的url
500[internal server error] : 服务器发出不可预期的错误
503[server unavailable] ;服务器当前不能处理请求,一段时间后可恢复

四、请求方法:

get post 区别:

1.请求参数区别:
  get 请求把参数拼接在url后面,以?分隔,多个参数之间用&连接
  post 会把提交的数据放在请求体中,不会在url中显示
2.传输数据的大小:
  get 浏览器和服务器会限制url长度,2k
  post 由于不是url传递,可以传输较大的数据
3.数据解析:
  get 通过request.querystring获取变量的值
  post 通过request.form获取变量的值
4.安全性:
  get 请求参数在url后面,可以直接看到
  post 请求参数在请求体里面传输,无法直接拿到,相对get安全

五、工作原理

http协议采用 请求/响应模式,客户端向服务器发送一个请求报文,然后服务器段响应请求

输入url,回车
浏览器向DNS服务器请求解析该url中的域名对应的ip地址
解析出ip后,根据ip和端口号,和服务器建立tcp连接
浏览器向服务器发送请求,该请求报文作为TCP三次握手的第三个报文发送给服务器
服务器做出响应,把数据发送给浏览器
通信完成 断开TCP连接
浏览器解析收到的数据并显示

六、HTTPS简介

https是安全的http通道,在http通信中加入了SSL层,通信加密,防止被窃取–主要是对称加密方法

1.https协议需要ca申请书
2.http的信息是明文传输,https是安全性的ssl加密传输协议
3.http端口80 https是443
4.http 连接简单无状态的;https协议偶ssl+http协议构成,进行加密传输、身份验证的网络协议,比http安全

HTTP协议格式详解

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值