aalfiann/slim-skeleton

这是一个非常简单、快速且安全的slim-skeleton。

安装: 375

依赖: 0

建议者: 0

安全: 0

星星: 2

观察者: 3

分支: 1

开放问题: 0

类型:框架

1.6.2 2020-03-29 11:38 UTC

This package is auto-updated.

Last update: 2024-09-29 05:02:08 UTC


README

Version Total Downloads License

这是一个非常简单、快速且安全的slim-skeleton。
此骨架使用CSRF进行安全保护,具有快速、简单和模块化架构。

依赖项

  • CSRF Guard >> slim/csrf
  • TWIG 模板 >> slim/twig-view
  • HTTP 缓存 >> slim/http-cache
  • Flash 消息 >> slim/flash
  • 日志记录器 >> monolog/monolog

安装

通过 Composer 安装此包。

composer create-project aalfiann/slim-skeleton [my-app-name]

入门

如何创建新应用程序

  • 进入模块目录
  • 创建新的文件夹 my-app
  • 要创建路由,应遵循以下模式 >> *.router.php
  • 将视图模板放在 templates/default 目录中
  • 完成

如何激活CSRF

CSRF 已集成到此骨架中

  1. 创建相同的两个路由,GET 和 POST
use \Psr\Http\Message\ServerRequestInterface as Request;
use \Psr\Http\Message\ResponseInterface as Response;

// load contact page
$app->get('/contact', function (Request $request, Response $response) {
    $body = $response->getBody();
    return $this->view->render($response, "contact.twig", []);
})->setName("/contact")->add($container->get('csrf'));

// send message
$app->post('/contact', function (Request $request, Response $response) {
    $body = $response->getBody();
    return $this->view->render($response, "contact.twig", []);
})->add($container->get('csrf'));
  1. 在联系表单HTML中放置隐藏的输入值
<input type="hidden" name="{{csrf.keys.name}}" value="{{csrf.name}}">
<input type="hidden" name="{{csrf.keys.value}}" value="{{csrf.value}}">
  1. 完成

注意

  • 有关 Slim 的文档可在 slimframework.com 上找到。
  • 这是从原始 slimphp/Slim-Skeleton 分支出来的版本。
  • 有一个基于此骨架的 swift 项目,它已经集成了Flat-File、用户会话、授权、验证等。