maximo-perez-villalba/framework-http

该组件实现了一个简单的PHP HTTP架构,具有教学目的。

2.4.4 2022-06-25 03:05 UTC

This package is auto-updated.

Last update: 2024-09-09 07:03:56 UTC


README

该组件实现了一个简单的面向对象的PHP HTTP架构。
本项目具有教学目的。


安装

可以通过两种方式使用Composer安装framework-http:

1 从命令行进入项目目录并执行

composer require maximo-perez-villalba/framework-http

2 也可以通过手动修改composer.json文件

"require": {
  "maximo-perez-villalba/framework-http": ">=2.4.0"
},

2.1 然后从命令行执行

composer update

如何使用

HTTPRequestsRoutes::start( 'Ruta del archivo de  configuración' );
HTTPRequestsRoutes::executeCurrentRequest();
HTTPRequestsRoutes::executeCurrentResponse();

文档

HTTP消息

HTTP消息是服务器和客户端之间交换数据的媒介。
有两种类型的消息

  • 请求由客户端发送给服务器,以请求开始一个操作
  • 响应,这是服务器的响应。

HTTP消息由文本组成,使用ASCII编码,可以包含多行。
来源:developer.mozilla.org: HTTP消息


通过HTTP协议进行通信的示例

POST / HTTP 1.1
GET /background.png HTTP/1.0
HEAD /test.html?query=alibaba HTTP/1.1
OPTIONS /anypage.html HTTP/1.0

Web客户端通过调用URI(统一资源标识符)来对Web服务器进行请求。

URI = URL + URN
其中URL是服务器的位置,URN是请求的资源/操作的特定位置。

Web服务器是准备通过HTTP协议通过网络连接监听客户端发送的资源请求事件的系统。
客户端可以请求两种类型的资源

  • 静态资源,其响应只是返回/传输文件。静态资源包括HTML、PDF、视频、图片等文件。
  • 动态资源在这种情况下,服务器将执行委托给脚本的脚本。脚本可以用许多编程语言编写,如PHP、Java、NodeJS、CGI等。

解决的问题是什么?

此组件允许控制使用HTTP协议编写的请求集。要正常工作,该组件需要注册它可以处理的请求。

这样,它将请求的URN与一个执行自定义操作的类相关联。
将请求集注册并关联到配置文件中的一个类的某个方法中,该配置文件定义了Web应用的REST API。


Figure: UML flowchart > HTTP Request Routes :: start
图:UML流程图 > HTTP请求路由 :: 开始


Figure: UML flowchart > HTTP Request Routes :: set current request
图:UML流程图 > HTTP请求路由 :: 设置当前请求


Figure: UML flowchart > HTTP Request Routes :: execute current request
图:UML流程图 > HTTP请求路由 :: 执行当前请求


Figure: UML class > HTTP framework
图:UML类 > HTTP框架


Figure: UML sequence > HTTP request routes :: start
图:UML序列 > HTTP请求路由 :: 开始


Figure: UML sequence > HTTP request routes :: execute current request
图:UML序列 > HTTP请求路由 :: 执行当前请求