什么是HTTP请求/服务器响应?

这一次,我将讲解“请求/响应” ,它是 Web 编程的基础。

服务器和客户端

首先网络程序安装在互联网上的“服务器”中。

然后世界各地的用户通过从他们的PC浏览器输入URL来访问服务器的Web程序。

每个用户的PC就被称为“客户端”。

在Web程序中,客户端和服务器反复交换请求响应

什么是HTTP请求/服务器响应?  第1张

请求(Request)和响应(Response)

例如当用户从浏览器发出[请求] “显示此页面”时,服务器[响应]返回该页面的HTML。

然后客户端的浏览器解析该HTML并将其作为屏幕呈现给用户。

什么是HTTP请求/服务器响应?  第2张

此外当您单击显示屏幕上的链接或单击表单的提交按钮时,“请求”会再次发送到服务器,并返回“响应”。

发送请求(Request)返回响应(Response)的这一次的交换被称为“一次请求”。

每次在浏览器中执行交互时都会生成此请求。

浏览器请求

实际请求主要有以下几种方法:

  • 直接访问 URL

  • 点击页面中的链接或按钮

  • 填写表单并点击发送按钮

服务器响应

服务器接收这些请求并响应请求执行以下操作:

  • HTML 按原样返回。

  • 数据库中获取数据生成并返回 HTML。

  • 根据请求接收到的数据,在数据库中注册/更新/删除并返回结果。

什么是参数?

此时服务器可能需要从客户端接收一些数据进行处理。

例如从数据库中检索数据时应该检索哪些数据?如何通过“ID”在数据库中添加用户输入的数据。

这些需要浏览器传递给服务器的数据称为“参数”。

请求类型

从技术角度来看,发送请求有两种方式。

即“ GET”和“ POST”两种方法。

两者的区别在于参数是如何传递给服务器的。

GET方法

GET 是一种传递附加到 URL 末尾的参数的方法。

我敢肯定你见过很多“?”的网址。

https://www.ciyawang.com/php.html?pege=2&type=1

这是URL的“?”后面的参数,设置了[参数名称] = [值]。(每个参数集由'&'分隔)

例如上面的URL参数如下:

[URL] https://www.ciyawang.com/php.html

[参数1] page [值] 2

[参数2] type [值]  1

因此将两个参数传递给服务器: 'page'和'type' 。

直接输入URL、从书签访问或页面标签链接打开会发送GET 请求。

GET在URL中嵌入了参数,其优点是可以对参数的状态进行标记,但这一点并不适用于输入数据和个人信息的重要参数在内的请求。

在这种情况下,请使用“POST 方法”。

在 POST 请求中,参数被发送到服务器而不添加到 URL。

基本上这种 POST 请求用于登录账号、订单查询、订单添加以及从页面中输入信息并按下“发送”按钮的其他类型请求。

使用 POST 发送请求,需要在 HTML <form> 标签属性中指定【method="POST"】 。

输入个人信息、密码、发送大量数据等情况,请始终使用 POST 方法。

POST 方法

POST 不显示 URL 中的参数。

如果在form标签的属性中指定【method="POST"】,它将以POST格式发送。

基本上出于安全原因,来自表单的请求都使用 POST。

POST的缺点是,如果将POST请求返回的响应页面“重新载入”,或者在该页面上“通过浏览器返回按钮返回”,则会显示“确认表单重发”提示。

什么是HTTP请求/服务器响应?  第3张

这是一个无法避免的确认信息,因为浏览器会自行重新发送表单(POST 重新发送),但如果频繁出现,会给用户带来不便。

例如在搜索框中输入一个单词并显示搜索结果,假设现在需要使用“浏览器的返回按钮”返回搜索结果页面。如果这样操作页面将显示上面提到的“确认表单重发”提示。

在这种情况下搜索表单可以使用 GET 方法。

这里顺便说下 百度搜索也是 GET 方法。

什么是HTTP请求/服务器响应?  第4张


本文来源:词雅网

本文地址:https://www.ciyawang.com/request-67.html

本文使用「 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 」许可协议授权,转载或使用请署名并注明出处。

相关推荐