crazygoat/slim-reactor

基于Slim框架的React HTTP服务器

v0.2.5 2018-02-25 18:49 UTC

This package is auto-updated.

Last update: 2024-09-14 07:55:12 UTC


README

React Http服务器,使用Slim 3作为请求处理器。Slim-reactor允许您比传统的php-fpm更快速地运行Slim 3应用程序。这一目标是通过跳过昂贵的PHP和框架引导过程实现的。这只是一个库,可以用于类似于slim-reactor-skeleton的骨架。您还需要像这样的进程管理器goatherd

安装

安装slim-reactor最简单的方法是使用composer下载

composer require crazygoat/slim-reactor 

使用示例

以下是运行Slim在React HTTP服务器中所需的最小代码

$app = new App(); // vanilla slim app see limitation

//or 

$app = new SlimReactorApp(); // 

//some app configuration here

$slimReactor  = new SlimReactor($app);
$slimReactor->run();

更多示例可以在示例目录中找到。

纯Slim App的已知限制

纯Slim App(Slim\App)不是为了作为React Http服务器的部分而设计的,因此它有一些使用限制。

  • 您不能在路由中使用可选参数。Slim Route 会记住请求之间的可选属性。一旦可选属性出现在请求中,下一个没有此属性的请求仍将位于该路由中。在SlimReactor中已修复

这些问题的大多数都在SlimReactorApp中得到了解决,并推荐与SlimReactor一起使用此类。

配置

您可以通过将第二个参数传递给SlimReactor构造函数来更改默认参数。

$slimReactor = new SlimReactor(
    $app,
    [
        // options here
    ]
);

可用选项

  • socket - 套接字地址,要监听本地主机接口上的端口80,请将此值设置为127.0.0.1:80。默认值是:0.0.0.0:0
  • loopInterface - 传递您循环接口的选项。如果未设置此选项,SlimRector将创建自己的循环接口实例。默认值 null
  • convertToSlim - 将PSR-7请求/响应转换为Slim请求/响应类的布尔选项。如果您使用内部Slim函数(如Response->withJson()),则需要将其设置为true。默认设置为true。如果我们确信您的代码没有使用Slim内部函数,则将此选项设置为false可以加快应用程序的速度。
  • staticContentPath - 静态内容目录的路径(可以是相对路径)。如果设置,则SlimReactor将尝试在staticContentPath目录中提供静态文件。如果文件不存在,SlimReactor将尝试找到匹配的路由。默认值 null