银川品牌网站建设公司,建立网站的目的是什么,中国互联网协会秘书长,网站测速HTTP请求格式当浏览器向Web服务器发出请求时#xff0c;它向服务器传递了一个数据块#xff0c;也就是请求信息#xff0c;HTTP请求信息由3部分组成#xff1a;l 请求方法URI协议/版本l 请求头(Request Header)l 请求正文下面是一个HTTP请求的例子#xff1a;GET/sa…HTTP请求格式 当浏览器向Web服务器发出请求时它向服务器传递了一个数据块也就是请求信息HTTP请求信息由3部分组成 l 请求方法URI协议/版本 l 请求头(Request Header) l 请求正文 下面是一个HTTP请求的例子 GET/sample.jspHTTP/1.1 Accept:image/gif.image/jpeg,*/* Accept-Language:zh-cn Connection:Keep-Alive Host:localhost User-Agent:Mozila/4.0(compatible;MSIE5.01;Window NT5.0) Accept-Encoding:gzip,deflate usernamejinqiaopassword1234 1 请求方法URI协议/版本 请求的第一行是“方法URL议/版本”GET/sample.jsp HTTP/1.1 以上代码中“GET”代表请求方法“/sample.jsp”表示URI“HTTP/1.1代表协议和协议的版本。 根据HTTP标准HTTP请求可以使用多种请求方法。例如HTTP1.1支持7种请求方法GET、POST、HEAD、OPTIONS、PUT、DELETE和TARCE。在Internet应用中最常用的方法是GET和POST。 URL完整地指定了要访问的网络资源通常只要给出相对于服务器的根目录的相对目录即可因此总是以“/”开头最后协议版本声明了通信过程中使用HTTP的版本。 2 请求头(Request Header) 请求头包含许多有关的客户端环境和请求正文的有用信息。例如请求头可以声明浏览器所用的语言请求正文的长度等。 Accept:image/gif.image/jpeg.*/* Accept-Language:zh-cn Connection:Keep-Alive Host:localhost User-Agent:Mozila/4.0(compatible:MSIE5.01:Windows NT5.0) Accept-Encoding:gzip,deflate. 3 请求正文 请求头和请求正文之间是一个空行这个行非常重要它表示请求头已经结束接下来的是请求正文。请求正文中可以包含客户提交的查询字符串信息 usernamejinqiaopassword1234 在以上的例子的HTTP请求中请求的正文只有一行内容。当然在实际应用中HTTP请求正文可以包含更多的内容。 HTTP请求方法我这里只讨论GET方法与POST方法 l GET方法 GET方法是默认的HTTP请求方法我们日常用GET方法来提交表单数据然而用GET方法提交的表单数据只经过了简单的编码同时它将作为URL的一部分向Web服务器发送因此如果使用GET方法来提交表单数据就存在着安全隐患上。例如 Http://127.0.0.1/login.jsp?NamezhangshiAge30Submit%cc%E%BD%BB 从上面的URL请求中很容易就可以辩认出表单提交的内容。之后的内容另外由于GET方法提交的数据是作为URL请求的一部分所以提交的数据量不能太大 l POST方法 POST方法是GET方法的一个替代方法它主要是向Web服务器提交表单数据尤其是大批量的数据。POST方法克服了GET方法的一些缺点。通过POST方法提交表单数据时数据不是作为URL请求的一部分而是作为标准数据传送给Web服务器这就克服了GET方法中的信息无法保密和数据量太小的缺点。因此出于安全的考虑以及对用户隐私的尊重通常表单提交时采用POST方法。 从编程的角度来讲如果用户通过GET方法提交数据则数据存放在QUERYSTRING环境变量中而POST方法提交的数据则可以从标准输入流中获取。 HTTP应答与HTTP请求相似HTTP响应也由3个部分构成分别是 l 协议状态版本代码描述 l 响应头(Response Header) l 响应正文 下面是一个HTTP响应的例子 HTTP/1.1 200 OK Server:Apache Tomcat/5.0.12 Date:Mon,6Oct2003 13:23:42 GMT Content-Length:112 htmlhead titleHTTP响应示例title /head body Hello HTTP! /body /html协议状态代码描述HTTP响应的第一行类似于HTTP请求的第一行它表示通信所用的协议是HTTP1.1服务器已经成功的处理了客户端发出的请求200表示成功: HTTP/1.1 200 OK响应头(Response Header)响应头也和请求头一样包含许多有用的信息例如服务器类型、日期时间、内容类型和长度等 Server:Apache Tomcat/5.0.12 Date:Mon,6Oct2003 13:13:33 GMT Content-Type:text/html Last-Moified:Mon,6 Oct 2003 13:23:42 GMT Content-Length:112 响应正文响应正文就是服务器返回的HTML页面 htmlhead titleHTTP响应示例title /head body Hello HTTP! /body /html 响应头和正文之间也必须用空行分隔。 l HTTP应答码 HTTP应答码也称为状态码它反映了Web服务器处理HTTP请求状态。HTTP应答码由3位数字构成其中首位数字定义了应答码的类型 1XX信息类(Information),表示收到Web浏览器请求正在进一步的处理中 2XX成功类Successful,表示用户请求被正确接收理解和处理例如200 OK 3XX-重定向类(Redirection),表示请求没有成功客户必须采取进一步的动作。 4XX-客户端错误(Client Error)表示客户端提交的请求有错误 例如404 NOT Found意味着请求中所引用的文档不存在。 5XX-服务器错误(Server Error)表示服务器不能完成对请求的处理如 500 对于我们Web开发人员来说掌握HTTP应答码有助于提高Web应用程序调试的效率和准确性。 安全连接 Web应用最常见的用途之一是电子商务可以利用Web服务器端程序使人们能够网络购物需要指出一点是缺省情况下通过Internet发送信息是不安全的如果某人碰巧截获了你发给朋友的一则消息他就能打开它假想在里面有你的信用卡号码这会有多么糟糕幸运的是很多Web服务器以及Web浏览器都有创立安全连接的能力这样它们就可以安全的通信了。 通过Internet提供安全连接最常见的标准是安全套接层(Secure Sockets layer,SSl)协议。SSL协议是一个应用层协议(和HTTP一样)用于安全方式在Web上交换数据SSL使用公开密钥编码系统。从本质讲这意味着业务中每一方都拥有一个公开的和一个私有的密钥。当一方使用另一方公开密钥进行编码时只有拥有匹配密钥的人才能对其解码。简单来讲公开密钥编码提供了一种用于在两方之间交换数据的安全方法SSL连接建立之后客户和服务器都交换公开密钥并在进行业务联系之前进行验证一旦双方的密钥都通过验证就可以安全地交换数据。转载于:https://www.cnblogs.com/zongyl/p/8037793.html