特点
单向请求,HTTP协议永远都是客户端发起请求,服务器回送响应。这样就限制了使用HTTP协议,无法实现在客户端没有发起请求的时候,服务器将消息推送给客户端。
PHP
工作流程
一次HTTP操作称为一个事务,其工作过程可分为四步:
首先客户机与服务器需要建立连接。
建立连接后,客户机发送一个请求给服务器,请求方式的格式为:统一资源标识符(URL)、协议版本号,客户机信息和可能的内容。
服务器接到请求后,给予相应的响应信息,其格式为一个状态行,包括信息的协议版本号、一个成功或错误的代码(status Code状态码),后边服务器信息、实体信息和可能的内容。
客户端接收完服务器所返回的信息后,与服务器断开连接。
如果在以上过程中的某一步出现错误,那么产生错误的信息将返回到客户端。
对于用户来说,这些过程是由HTTP自己完成的,用户只要用鼠标点击,等待信息显示就可以了。
Status Code
Status Code是HTTP协议状态码,当发起http请求后,服务器端会会返回不同的状态码,用以标示其工作状态:
1xx:信息,服务器收到请求,需要请求者继续执行操作
100 继续。客户端应继续其请求 101 切换协议。服务器根据客户端的请求切换协议。只能切换到更高级的协议,例如,切换到HTTP的新版本协议
2xx:成功,操作被成功接收并处理
200 请求成功。一般用于GET与POST请求 201 已创建。成功请求并创建了新的资源 202 已接受。已经接受请求,但未处理完成 203 非授权信息。请求成功。 204 无内容。服务器成功处理,但未返回内容。
3xx:重定向,需要进一步的操作以完成请求
300 请求的资源可在多处得到 301 删除请求数据 304 网页自请求者上次请求后再也没有更改过
4xx:客户端错误,请求包含语法错误或无法完成请求
400 错误请求,如语法错误 401 请求授权失败 403 请求不允许 404 没有发现文件、查询或URl
5xx:服务器错误,服务器在处理请求的过程中发生了错误
500 服务器产生内部错误 502 服务器暂时不可用,有时是为了防止发生系统过载 503 服务器过载或暂停维修 505 服务器不支持或拒绝支请求头中指定的HTTP版本
HTTP通讯协议-简介「程序员培养之路第六十二天」
Laravel-数据库(二)「程序员培养之路第六十一天」
Laravel-数据库(一)「程序员培养之路第六十天」
举报/反馈