首页
学习
活动
专区
圈层
工具
发布

HTTP协议详解

如果正文有内容,则在请求报头里面会有一个 Content-Length 属性来标识正文的长度。如果服务器返回了一个 html 页面 , 那么html页面内容就是在body中。...referer 表示当前页面是从哪个页面跳转过来的。如果直接在浏览器中输入 URL, 或者直接通过收藏夹访问页面时是没有 Referer 的。 这个方便我们进行操作。...当客户端和服务器都不明 确指定关闭连接时,连接将保持打开状态,以便后续的请求和响应可以复用同一个连 接。 • HTTP/1.0:在 HTTP/1.0 协议中,默认连接是非持久的。...: 状态码 含义 是否为临时重定向 应用样例 301 Moved Permanently 否(永久重定向) 网站换域名后,自 动跳转到新域名; 搜索引擎更新网站 链接时使用 302 Found 或 See...这个 Location 选项是一个标准的 HTTP 响应头部,用于告诉浏览器应该 将请求重定向到哪个新的 URL 地址。 4.4 常见请求报头 响应报头的格式和请求报头的格式基本一致。

98110

【Linux网络编程】应用层协议HTTP(请求方法,状态码,重定向,cookie,session)

序号 请求方法 描述 1 GET 请求指定的页面信息,并返回实体主体。通常用于获取数据,不会对数据进行更改。 2 HEAD 类似于GET请求,但只返回HTTP报头,不返回文档主体。...如果资源不存在,可能会创建新的资源。 5 DELETE 请求服务器删除指定的页面或资源。 6 CONNECT 把请求连接转换到透明的TCP/IP通道,通常用于代理服务器或建立HTTPS连接。...服务器已收到请求的第一部分,正在等待其余部分。 101 切换协议 请求者已要求服务器切换协议,服务器已确认并准备切换。 102 继续执行 由WebDAV扩展的状态码,代表处理将被继续执行。...不管是永久重定向还有临时重定向,都是和报头中的location有关的,当请求的URL需要重定向到新的URL时,header就会带location信息。...Host: 客户端告知服务器, 所请求的资源是在哪个主机的哪个端口上; User-Agent: 声明用户的操作系统和浏览器版本信息; referer: 当前页面是从哪个页面跳转过来的; Location

32500
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【计算机网络】HTTP协议

    不能保证,但是我们能保证能读到一个完整的 http 报头,因为只需要读到空行就可以了!...: (2)301(永久重定向) 和 302(临时重定向) 在讲这两个重定向前,我们先认识一下 HTTP 报头当中的 Location 字段,Location 就是搭配 3xx 状态码使用,告诉客户端接下来要去哪里访问...假设我们向目标服务器发起一个请求,当服务器给我们响应时,状态码如果是 3XX,响应报头里面有一个字段 Location,该属性后面会跟一个新的地址,这就是服务器告诉我们应该去哪里访问该资源,所以此时浏览器收到了...永久重定向就是我们经常访问一个网站,但是如果当这个网站需要更新时,需要把域名也更换,但是又有许多的老用户,这时候就需要给老网站部署一个服务,永久重定向,让老用户访问老网站时直接跳转到新网站。...; User-Agent:声明用户的操作系统和浏览器版本信息; referer:当前页面是从哪个页面跳转过来的; Location:搭配3xx状态码使用, 告诉客户端接下来要去哪里访问; Cookie:

    39110

    008:Http协议详解

    正在传输的类型由 Content-Type 加以标记。 4.无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。...Accept-Charset 请 求 报 头 域 用 于 指 定 客 户 端 接 受 的 字 符 集 。...当浏览器访问一个页面时,如果收到服务器的响应代码为 401(未授权),可以发送一个包含 Authorization 请求报头域的请求,要求服务器对其进行验证。...常用的响应报头 Location 响应报头域用于重定向接受者到一个新的位置。Location 响应报头域常用在更换域名的时候。 Server 响应报头域包含了服务器用来处理请求的软件信息。...为了让代理服务器或浏览器在一段时间以后更新缓存中(再次访问曾访问过的页面时,直接从缓存中加载,缩短响应时间和降低服务器负载)的页面,我们可以使用 Expires 实体报头域指定页面过期的时间。

    83330

    【Linux篇章】穿越网络迷雾:揭开 HTTP 应用层协议的终极奥秘!从请求响应到实战编程,从静态网页到动态交互,一文带你全面吃透并征服 HTTP 协议,打造属于你的 Web 通信利刃!

    认识HTTP 常见 Header 首先我们先认识下客户端收到答复是如何解析的: 如何提取相应正文: 响应文也可以是无内容的,如果是有内容那么一定会在Content-length加上长度再给用户的;因此用户就找空格然后看对应的...那么下面我们根据这俩个报头给我们之前写的http答复添加上: 大致思路: 服务端收到答复通过解析获得的路径去读取文件:如果读到就构建响应正文+正确码以及解释+报头之长度,正文类型等;如果失败就把路径修改成对应的...Accept请求头会有对应的关于/favicon.ico对应的类型;然后如果我们还是上面的逻辑找不到就404的话(之前就可以,但是现在我们报头会返回类型这样就导致类型不匹配了,因此会出现问题)那么请求如果是它...根据此处小结一下: 对于客户端(浏览器)请求如果对应的报头比如content-type等;是空的那么服务端返回的如果不是空是可以匹配的(客户端默认)﹔但是如果客户端发送的正文已知一些报头的类型;但是服务端返回来的是不匹配的...但是如果超市由于北门生意好,就搬到北门不回来了,因此它就会在原来南门的地方贴个告示说永久到北门–>(永久重定向)301+location!

    21310

    【计网】HTTP协议详解

    如果我们使用浏览器发送了请求,并且服务器端收到了请求,那么我们就可以看到以下返回的客户端请求格式,Tcp上层调用的服务代码如下,我们只对请求进行打印: #include #include...我们发现http请求格式中,报头部分与正文部分实际上是有一个空行作为分隔的,所以 HTTP协议就可以通过空行(“\n”)来分离报头和有效载荷部分。   ...以下是仅仅包含重定向相关状态的表格: 状态码 含义 是否为临时重定向 应用样例 301 Moved Permanently 否(永久重定向) 网站换域名后,自动跳转到新域名;搜索引擎更新网站链接时使用...Permanent Redirect 否(永久重定向) 永久重定向资源到新的位置(较少使用) HTTP 状态码 301(永久重定向)和 302(临时重定向)都依赖 Location 选项。...以上这些方法一般都不是由后端代码来完成的,不过如果想要处理这些请求后端也可以处理,一般这些都属于前端页面的请求方法,我们可以通过 HTML表单 来获取简单的前段页面,而以上方法中最重要的莫过于 GET

    62710

    Http协议分析

    正在传输的类型由Content-Type加以标记。 无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。...利用这个方法,不必传输整个资源内容,就可以得到Request-URI所标识的资源的信息。该方法常用于测试超链接的有效性,是否可以访问,以及最近是否更新。...Location:Location响应报头域用于重定向接受者到一个新的位置。...例如:客户端所请求的页面已不存在原先的位置,为了让客户端重定向到这个页面新的位置,服务器端可以发回Location响应报头后使用重定向语句,让客户端去访问新的域名所对应的服务器上的资源;   Server...)响应消息中,这个报头域和前面讲到的Authorization 请求报头域是相关的,当客户端收到 401 响应消息,就要决定是否请求服务器对其进行验证。

    70520

    HTTP协议具体解释

    正在传输的类型由Content-Type加以标记。 4.无连接:无连接的含义是限制每次连接仅仅处理一个请求。server处理完客户的请求。并收到客户的应答后。即断开连接。...该方法经常使用于測试超链接的有效性,能否够訪问,以及近期是否更新。...当浏览器訪问一个页面时,假设收到server的响应代码为401(未授权),能够发送一个包括Authorization请求报头域的请求,要求server对其进行验证。 Host(发送请求时。...经常使用的响应报头 Location Location响应报头域用于重定向接受者到一个新的位置。 Location响应报头域经常使用在更换域名的时候。...直接从缓存中载入,缩短响应时间和减少server负载)的页面,我们能够使用Expires实体报头域指定页面过期的时间。

    66810

    Java程序员必须掌握的网站知识 —— HTTP

    正在传输的类型由Content-Type加以标记。 3、无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。...302 Found   重定向,新的URL会在response中的Location中返回,浏览器将会使用新的URL发出新的Request。 ?...当浏览器访问一个页面时,如果收到服务器的响应代码为401(未授权),可以发送一个包含Authorization请求报头域的请求,要求服务器对其进行验证。...常用的响应报头: ① Location Location响应报头域用于重定向接受者到一个新的位置。Location响应报头域常用在更换域名的时候。...为了让代理服务器或浏览器在一段时间以后更新缓存中(再次访问曾访问过的页面时,直接从缓存中加载,缩短响应时间和降低服务器负载)的页面,我们可以使用Expires实体报头域指定页面过期的时间。

    1.2K60

    HTTP协议之:报文详解

    正在传输的类型由Content-Type加以标记。 无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。...301 Moved Permanently 永久重定向,告诉客户端以后应从新地址访问. 302 Found 与301状态码类似,但是,客户端应该使用Location首部给出的URL来临时定位资源。...303 See Other 对于POST请求,它表示请求已经被处理,客户端可以接着使用GET方法去请求Location里的URI。如在文件上传完成后让客户端自动重定向到一个上传成功的结果页面。...为了让代理服务器或浏览器在一段时间以后更新缓存中(再次访问曾访问过的页面时,直接从缓存中加载,缩短响应时间和降低服务器负载)的页面,我们可以使用Expires实体报头域指定页面过期的时间。...eg:为了让浏览器不要缓存页面,我们也可以利用Expires实体报头域,设置为0,jsp中程序如下:response.setDateHeader(“Expires”,”0”); Last-Modified

    1.3K10

    前端基础——谈谈HTTP

    ),与post的区别是put为幂等,post为非幂等; •trace:回显服务器收到的请求,用于测试和诊断。...,通过GET方式提交数据时,用户名和密码将出现在URL上,如果页面可以被缓存或者其他人可以访问这台机器,就可以从历史记录获得该用户的账号和密码。...•200 OK:客户端请求成功 •301 redirect:页面永久性移走,服务器进行重定向跳转; •302 redirect:页面暂时性移走,服务器进行重定向跳转,具有被劫持的安全风险; •400 BadRequest...这个状态代码必须和WWW-Authenticate报头域一起使用; •403 Forbidden:服务器收到请求,但是拒绝提供服务。...–用于在进行重定向,或在创建了某个新资源时使用,例: Location:http://www.itbilu.com/nodejs Refresh–用于重定向,或者当一个新的资源被创建时。

    92230

    HTTP

    正在传输的类型由Content-Type加以标记。 4.无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。...:Location响应报头域用于重定向接受者到一个新的位置。...例如:客户端所请求的页面已不存在原先的位置,为了让客户端重定向到这个页面新的位置,服务器端可以发回Location响应报头后使用重定向语句,让客户端去访问新的域名所对应的服务器上的资源; Server:...响应消息中,这个报头域和前面讲到的Authorization 请求报头域是相关的,当客户端收到 401 响应消息,就要决定是否请求服务器对其进行验证。...如果要求服务器对其进行验证,就可以发送一个包含了Authorization 报头域的请求; 空行:最后一个响应头部之后是一个空行,发送回车符和换行符,通知服务器以下不再有响应头部。

    68310

    HTTP协议

    ),与post的区别是put为幂等,post为非幂等; trace:回显服务器收到的请求,用于测试和诊断。...,通过GET方式提交数据时,用户名和密码将出现在URL上,如果页面可以被缓存或者其他人可以访问这台机器,就可以从历史记录获得该用户的账号和密码。...200 OK:客户端请求成功 301 redirect:页面永久性移走,服务器进行重定向跳转; 302 redirect:页面暂时性移走,服务器进行重定向跳转,具有被劫持的安全风险; 400 BadRequest...这个状态代码必须和WWW-Authenticate报头域一起使用; 403 Forbidden:服务器收到请求,但是拒绝提供服务。...–用于在进行重定向,或在创建了某个新资源时使用,例: Location:http://www.itbilu.com/nodejs Refresh–用于重定向,或者当一个新的资源被创建时。

    96320

    HTTP协议详解

    正在传输的类型由Content-Type加以标记。 4.无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。...利用这个方法,不必传输整个资源内容,就可以得到Request-URI所标识的资源的信息。该方法常用于测试超链接的有效性,是否可以访问,以及最近是否更新。...当浏览器访问一个页面时,如果收到服务器的响应代码为401(未授权),可以发送一个包含Authorization请求报头域的请求,要求服务器对其进行验证。...常用的响应报头 Location Location响应报头域用于重定向接受者到一个新的位置。Location响应报头域常用在更换域名的时候。...为了让代理服务器或浏览器在一段时间以后更新缓存中(再次访问曾访问过的页面时,直接从缓存中加载,缩短响应时间和降低服务器负载)的页面,我们可以使用Expires实体报头域指定页面过期的时间。

    1.2K90

    Web安全学习笔记之HTTP协议

    ; Accept-Encoding:指定可接受的内容编码,缺省是各种内容编码都可以接受; Authorization:证明客户端有权查看某个资源,当浏览器访问一个页面,如果收到服务器的响应代码为401(...Response中应该包含一个Location URL, 说明资源现在所处的位置 302 Moved Temporarily(临时重定向)  304 Not Modified(未修改)客户的缓存资源是最新的...常用的响应报头如下: Location:用于重定向接受者到一个新的位置,Location响应报头域常用在更换域名的时候; Server:包含了服务器用来处理请求的软件信息,与User-Agent请求报头域是相对应的...GET方式提交数据,会带来安全问题,比如一个登录页面,通过GET方式提交数据时,用户名和密码将出现在URL上,如果页面可以被缓存或者其他人可以访问这台机器,就可以从历史记录获得该用户的账号和密码。...另外一种情况是请求消息中如果包含比较大的实体内容,但不确定服务器是否能够接收该请求(如是否有权限),此时若贸然发出带实体的请求,如果被拒绝也会浪费带宽。

    1.3K20

    HTTP 协议详解 (增删减及标注)

    假设现在应用层协议为http,那么其中的Data 可以看作是一个http请求或者应答,Data包含真正的消息正文和app首部(即报头等)。 ? 如上面的输出中,真正的消息正文即......利用这个方法,不必传输整个资源内容,就可以得到Request-URI所标识的资源的信息。该方法常用于测试超链接的有效性,是否可以访问,以及最近是否更新。...当浏览器访问一个页面时,如果收到服务器的响应代码为401(未授权),可以发送一个包含Authorization请求报头域的请求,要求服务器对其进行验证。...常用的响应报头 Location Location响应报头域用于重定向接受者到一个新的位置。Location响应报头域常用在更换域名的时候。...为了让代理服务器或浏览器在一段时间以后更新缓存中(再次访问曾访问过的页面时,直接从缓存中加载,缩短响应时间和降低服务器负载)的页面,我们可以使用Expires实体报头域指定页面过期的时间。

    1.1K50

    Linux网络-HTTP协议

    HTTP的报头信息,而这里的请求正文实际就是HTTP的有效载荷,而请求当中的空行起到分离报头和有效载荷的作用 读取一个请求时,通过报头中的Content-Length(正文的长度)来精准控制读取该请求正文的长度...Body存在,则在Header中会有一个 Content-Length属性来标识Body的长度;如果服务器返回了一个html页面,那么html页面内容就是在body中 获取响应示例:http服务器代码构建响应...临时重定向演示: 进行临时重定向时需要用到Location字段,Location字段是HTTP报头当中的一个属性信息,该字段表明了你所要重定向到的目标网站 构建临时重定向http响应代码: /...注:Referer记录上一个页面的好处一方面是方便回退,另一方面可以知道我们当前页面与上一个页面之间的相关性 Location:搭配3XX状态码使用,告诉客户端接下来要去哪里访问 Cookie...,但是如果cookie被人拦截了,那人就可以取得期中的参数信息。

    1.8K20

    HTTP协议经典详解

    正在传输的类型由Content-Type加以标记。 4.无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。...利用这个方法,不必传输整个资源内容,就可以得到Request-URI所标识的资源的信息。该方法常用于测试超链接的有效性,是否可以访问,以及最近是否更新。...当浏览器访问一个页面时,如果收到服务器的响应代码为401(未授权),可以发送一个包含Authorization请求报头域的请求,要求服务器对其进行验证。...常用的响应报头 Location Location响应报头域用于重定向接受者到一个新的位置。Location响应报头域常用在更换域名的时候。...为了让代理服务器或浏览器在一段时间以后更新缓存中(再次访问曾访问过的页面时,直接从缓存中加载,缩短响应时间和降低服务器负载)的页面,我们可以使用Expires实体报头域指定页面过期的时间。

    1.6K40
    领券