HTTP学习笔记6-请求报头
29,请求报头:
请求报头允许客户端向服务器端传递该请求的附加信息以及客户端自身的信息。
30,Accept:
Accept请求报头域用于指定客户端接受哪类型的信息,例如:Accept: image/gif,表明客户端希望接受GIF图像格式的资源;Accept:text/html,表明客户端接受html文本。
31,Accept-Charset:
Accept-Charset请求报头域用于指定客户端接受的字符集。例如:Accept-Chartset:iso-8859-1,gb2312.如果在请求消息中没有设置这个域,缺省是任何字符集都可以接受。
32,Accept-Encoding:
Accept-Encoding请求报头域类似于Accept,但是它是用于指定可接受的内容编码。例如:Accept-Encoding:gzip,deflate。如果请求中没有设置这个域,服务器假定客户端对各种内容编码都可接受。
33,Accept-Language:
Accept-Language请求报头域类似于Accept,但是它是用于指定一种自然语言。例如:Accept-Language:zh-cn。如果请求消息中没有设置这个域,服务器假定客户端对各种语言都可以接受。
34,Authorization
Authorization请求报头域主要用于证明客户端有权查看某个资源。当浏览器访问页面是,如果收到服务器的响应代码为401(未授权),可以发送一个包含Authorization请求报头域的请求,要求服务器对其进行验证
35,Host
Host请求报头域主要用于指定被请求资源的Intenert主机和端口号,他通常是从HTTP URL中提取出来的。例如:在浏览器的地址栏输入:http://www.baidu.com/index.html
浏览器发送的请求消息中就会包含Host请求报头域,如下:
Host:www.baidu.com
后面没有跟端口号,表明使用缺省端口80,如果不是80端口,那就要在主机后面加上一个冒号:然后跟上端口号,例如:
Host:www.baidu.com:8080
注意:在发送HTTP请求的时候,这个报头域是必需的。
36,User-Agent
User-Agent请求报头域允许客户端将它的操作系统、浏览器和其他属性告诉服务器,不过这个报头域不是必需的,如果我们自己编写一个浏览器,不实用User-Agent请求报头域,那么服务器端就无法得知我们的信息了。
37,消息报头-相应报头
响应报头允许服务器传递不能放在状态行中的附加响应信息,以及关于服务器的信息和对Request-URI所标识的资源进行下一步访问的信息。
38,Location:
Location响应报头域用于重定向接受者收到一个新的位置。例如:客户端所请求的页面已不在原先的位置,为了让客户端重定向到这个页面新的位置,服务端可以发回Location响应报头域。这种情况还经常发生在变更域名的时候,在就得域名所对应的服务上保留一个文件,然后使用重定向语句,让客户端去访问新的域名所对应的服务器上饿资源。当我们在jsp中使用重定向语句的时候,服务器端向客户端发回的响应报头中,就会有Location响应报头域。下面是Location响应报头域的一个例子:
Location: http://www.baidu.com
39,Server
Server响应报头域包含了服务器用来处理请求的软件信息。他和User-Agent请求报头域是向对应的,前者发送服务器端软件的信息,后者发送客户端软件(浏览器)和操作系统的信息。
下面是Server响应报头域的一个例子:
Server: Apache-Coyote/1.1
40,WWW-Authenticate
WWW-Authenticate响应报头域必须包含在401(未授权的)响应消息中,这个报头域和前面讲到的Authenticate请求报头域是相关的,当客户端收到401响应消息,就要决定是否请求服务器对其进行验证。如果要求服务器对进行验证,就可以发送一个包含了Authorization报头域的请求,下面在WWW-Authenticate响应报头域的一个例子:
WWW-Authenticate: Basic realm=”Basic Auth Test!”
从这个响应报头域,可以知道服务器端对我们所请求的资源采用的是基本验证机制。
HTTP学习笔记6-请求报头的更多相关文章
- Django:学习笔记(4)——请求与响应
Django:学习笔记(4)——请求与响应 0.URL路由基础 Web应用中,用户通过不同URL链接访问我们提供的服务,其中首先经过的是一个URL调度器,它类似于SpringBoot中的前端控制器. ...
- HTTP学习笔记7-消息报头
41,消息报头-实体报头 请求和响应消息可以传送一个实体.一个实体由实体报头域和实体正文组成,在大多数情况下,实体正文就是请求消息中的请求正文或者响应消息中的响应正文.但是在发送时,并不是说实体报头域 ...
- HTTP学习笔记5-常用报头
24,在普通报头中,有少数报头域应用域所有的请求和响应消息,但并不用于被传输的实体,这些报头域只用于传输的消息. 25,常用的普通报头Cache-Control: Cache-Control普通报头域 ...
- Tornado学习笔记(三) 请求方式/状态码
本章我们来学习 Tornado 支持的请求方式 请求方式 Tornado支持任何合法的HTTP请求(GET.POST.PUT.DELETE.HEAD.OPTIONS).你可以非常容易地定义上述任一种方 ...
- iOS学习笔记---网络请求
一.HTTP协议的概念 HTTP协议:Hyper Text Transfer Protocol(超文本传输协议)是用于从万维网服务器传送超文本到本地浏览器的传输协议.HTTP是一个应用层协议,由请求和 ...
- angular2 学习笔记 ( Http 请求)
refer : https://angular.cn/docs/ts/latest/guide/server-communication.html https://xgrommx.github.io/ ...
- java web Servlet学习笔记-2 请求重定向和请求转发的区别
请求转发与请求重定向的区别 请求重定向和转发 1.请求重定向:浏览器的行为(通过响应对象HttpServletResponse来执行) 特点:可以重新定向访问其他Web应用下的资源 浏览器发出了2次请 ...
- Laravel5.1学习笔记5 请求
HTTP 请求 #取得请求实例 #基本的请求信息 #PSR-7 请求 #取出输入数据 #旧的输入 #Cookies #文件 #取得请求实例(此部分文档5.1完全重写,注意) 要通过依赖注入获取当前HT ...
- Angular5学习笔记 http请求
在anular4更新到angular5后,有些模块也发生了有些变化,例如http模块. 首先在app.module.ts里面引入HttpClientModule import { HttpClient ...
随机推荐
- CSS控制表单
一个简单的网站注册页面制作. 创建CSS文件如下: @charset "utf-8"; /* CSS Document */ * { margin: 0px; padding: 0 ...
- break、continue和goto 三者作用介绍
跳跃语句 由于break.continue和goto语句有助于跳跃到代码中的某个特定语句,因此它们属于跳跃语句.下面是这三个语句的介绍. ①break语句 这个语句常与switch语句联合使用:但是, ...
- Linux svn一次增加多个文件并批量上传
命令行下操作svn没有使用界面形式的TortoiseSVN直观,但是不管怎样,命令行下操作svn还是有它的有点,如果你碰到一次需要svn add许多个文件怎么办?下面的命令可以帮助你解决这个问题 一次 ...
- 什么是NSAssert?
断言, 判断是否符合某个特定条件, 符合就继续运行程序, 反之就抛出异常, 后面为自定义错误提示, 也可以使用NSParameterAssert, 在调试上有着很大的方便 int a = 0; NSA ...
- MySQL 创建数据库
MySQL 创建数据库 使用 mysqladmin 创建数据库 使用普通用户,你可能需要特定的权限来创建或者删除 MySQL 数据库. 所以我们这边使用root用户登录,root用户拥有最高权限,可以 ...
- Android热更新开源项目Tinker集成实践总结
前言 最近项目集成了Tinker,开始认为集成会比较简单,但是在实际操作的过程中还是遇到了一些问题,本文就会介绍在集成过程大家基本会遇到的主要问题. 考虑一:后台的选取 目前后台功能可以通过三种方式实 ...
- 访问快递100的rest的请求
转:http://blog.csdn.net/u011115507/article/details/9172679 查快递的时候发现了一个http://www.kaidi100.com 是金蝶旗下的下 ...
- javascript 常用array类型方法
concat:基于当前数组中的所有项创建一个新数据,会创建当前数组一个副本,然后将接受到的参数放到数组末尾,最后返回新数组.如果没有参数,则复制当前数组并返回副本. slice:基于当前数组中一个或多 ...
- c#中使用ABCpdf处理PDF
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI ...
- centos账户管理命令(root权限)
cat /etc/passwd | grep -v /sbin/nologin | cut -d : -f 1 查看所有用户 userdel -r 用户名 -删除用户 ...