liberty_code / request_flow
库
v1.0.1
2022-01-07 20:19 UTC
Requires
- php: ~7 || ~8
- liberty_code/library: ^1.0.
- liberty_code/parser: ^1.0.
- liberty_code/route: ^1.0.
Requires (Dev)
- liberty_code/di: ^1.0.
- liberty_code/register: ^1.0.
This package is auto-updated.
Last update: 2024-09-08 01:56:33 UTC
README
描述
库包含请求/响应和请求流程处理组件。请求流程使用前端控制器系统,从请求提供响应。
需求
- 脚本语言:PHP:版本 7 或 8
安装
有几种可能的方式
Composer
需求
需要安装Composer。更多信息请参阅:https://getcomposer.org.cn
命令:在项目根路径下移动
cd "<project_root_path>"
命令:安装
php composer.phar require liberty_code/request_flow ["<version>"]
注意
包含供应商
如果项目使用Composer,则必须包含供应商
require_once('<project_root_path>/vendor/autoload.php');
配置
安装命令允许在composer文件中添加
{ "require": { "liberty_code/request_flow": "<version>" } }
包含
下载
- 下载以下仓库。
- 将其放在仓库根路径。
包含源代码
require_once('<repository_root_path>/include/Include.php');
配置
主要配置
使用以下类来配置特定元素
use liberty_code\request_flow\config\model\DefaultConfig; DefaultConfig::instanceGetDefault()->get|set...();
可配置元素
- 响应选项
使用
请求
请求允许从请求流程过程中设计请求部分。请求允许提供请求流程过程中使用的路由源,以获取响应。
元素
请求
允许设计基本请求,
以获取字符串路由源。
示例
class HttpRequestTest extends liberty_code\request_flow\request\model\DefaultRequest
{
// Define rules to get route source
public function getStrRouteSrc()
{
// Get route source from GET "route" argument
return $_GET['route'];
}
}
$request = HttpRequestTest::instanceGetDefault();
echo($request->getStrRouteSrc()); // Show "<route>"
...
响应
响应允许从请求流程过程中设计响应部分。响应允许提供请求流程过程中的最终可发送内容。
元素
响应
允许设计基本响应,其中发送操作允许打印指定内容。可用于设计命令行响应。
响应实用工具
解析内容响应允许获取具有特定格式的内容的响应。例如:JSON响应、XML响应等...
示例
use liberty_code\request_flow\response\model\DefaultResponse;
$objResponse = new DefaultResponse();
$objResponse->setContent(...);
...
前端控制器
前端控制器允许设计请求流程过程。它使用路由从指定请求获取响应。
元素
FrontController
允许设计基本前端控制器。使用路由和请求路由源作为源,以查找可执行的路径并从其中获取响应。
示例
liberty_code\request_flow\front\model\DefaultFrontController;
use liberty_code\request_flow\front\http\model\HttpFrontController;
$frontController = new DefaultFrontController();
$frontController->setRouter(...);
$frontController->setActiveRequest(...);
...
// Show response object
var_dump($frontController->execute());
...