据说你叫Java(二)–Servlet请求

图片描述

Servlet客户端HTTP请求

当浏览器发送请求到服务器的时候,这个请求是不能被直接读取的,请求中包含了很是多的信息,而须要被读取的,只是请求中的一部分。json

如图跨域

图片描述

咱们能够看一下请求头有哪些经常使用的信息,以及它们的做用是什么浏览器

Accept-Charset

这个头信息告诉服务器处理表单数据所须要使用的字符集。缓存

咱们知道,在<form>中有一个属性叫作accept-charset,就是用来设置请求头中Accept-Charset属性的值的。安全

经常使用的值有ISO-8859-1UTF-8服务器

Connection

咱们知道HTTP协议采用“请求-应答”模式,当使用普通模式,即非Keep-Alive模式时,每一个请求/应答客户和服务器都要新建一个链接,完成 以后当即断开链接(HTTP协议为无链接的协议)cookie

当使用Keep-Alive模式(又称持久链接、链接重用)时,Keep-Alive功能使客户端到服 务器端的链接持续有效,当出现对服务器的后继请求时,Keep-Alive功能避免了创建或者从新创建链接。app

Cookie

Cookie你们应该都很是熟悉了,这个信息就是用来存放Cookie,并传给服务器的。dom

If-Modified-Since&If-Unmodified-Since

这两个头信息的值都是Date格式,用来告诉服务器所须要的文件的日期范围。编码

若是服务器上没有更新或者更旧的文件,就会返回一个304的状态码,表示文件并无改动,能够直接从缓存中加载。

User-Agent

这个信息记录了发出请求的客户端的信息,包含了浏览器类型、版本等信息。经过这个信息能够作浏览器类型判断。

Servlet服务器HTTP响应

当客户端发送了一个请求给服务器,服务器也会返回一个响应给客户端,一样的,这个响应中也包含了除数据以外的不少信息。

如图

图片描述

Control-Allow-Origin

Access-Control-Allow-Origin是HTML5中定义的一种解决资源跨域的策略。

若是设置为咱们本身当前页面的域名时,浏览器才会容许咱们拿到这个响应的数据,并进行下一步的处理。当设置为*的时候,表示该资源谁均可以用。

Content-Type

这个头信息告诉浏览器这个响应的数据格式及编码类型。

经常使用值为application/json;charset=utf-8

Server

经过服务器的响应头,咱们还能知道服务器的类型。

Set-Cookie

Web服务器经过传送HTTP 包头中的Set-Cookie 消息把一个cookie 发送到用户的浏览器中。

完整的Set-cookie格式以下

Set-Cookie:customer=huangxp; path=/foo; domain=.ibm.com; 
expires= Wednesday, 19-OCT-05 23:12:40 GMT; [secure]

path=/foo 控制哪些访问可以触发cookie 的发送。若是没有指定path,cookie会在全部对此站点的HTTP传送时发送。

若是path=/directory,只有访问/directory 下面的网页时,cookie才被发送。

domain=.ibm.com 指定cookie被发送到哪台计算机上。

正常状况下,cookie只被送回最初向用户发送cookie的计算机。若是domain 被设为空,domain就被设置为和提供cookie 的Web 服务器相同。若是domain不为空,而且它的值又和提供cookie的Web服务器域名不符,这个Cookie将被忽略。

expires= Wednesday, 19-OCT-05 23:12:40 GMT 指定cookie 失效的时间。若是没有指定失效时间,这个cookie 就不会被写入计算机的硬盘上,而且只持续到此次会话结束。

secure 若是secure 这个词被做为Set-Cookie 头的一部分,那么cookie 只能经过安全通道传输(目前即SSL通道)。不然,浏览器将忽略此Cookie。

最后

这么多的属性留给咱们去使用,去交互数据,它们就像一个个的座位,Servlet的HTTP请求就像一辆在客户端和服务器之间往返的大巴。

一个复杂的Web应用正是由于这些大巴组成的交通网才能畅通无阻。

下一章——大巴司机HttpServletResponseHttpServletRequest

图片描述

相关文章
相关标签/搜索