cocoon-projet/http 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

cocoon-projet/http

最新稳定版本:0.0.2

Composer 安装命令:

composer require cocoon-projet/http

包简介

server request basé sur laminas diactoros

README 文档

README

Tests codecov License

Composant HTTP avec Protection CSRF

Ce composant PHP fournit une implémentation robuste pour la gestion des requêtes HTTP et la protection CSRF (Cross-Site Request Forgery). Il est construit selon les standards PSR-7 et PSR-15, offrant une solution moderne et sécurisée pour vos applications web.

Caractéristiques

  • 🛡️ Protection CSRF intégrée
  • 🔄 Middleware Pipeline PSR-15
  • 🎯 Routage simple et efficace
  • 🔒 Gestion sécurisée des sessions
  • ✨ Façades pour une utilisation simplifiée
  • 🧪 Tests unitaires complets

Installation

composer require cocoon-projet/http

Configuration requise

  • PHP 7.4 ou supérieur
  • Composer
  • Extension PHP session activée

Utilisation rapide

1. Configuration de base

use Cocoon\Http\Application;
use Cocoon\Http\Facades\Request;
use Cocoon\Http\Middleware\CsrfMiddleware;

// Démarrer la session
session_start();

// Créer l'application
$app = new Application();

// Initialiser la requête
$request = Request::init();

2. Protection CSRF

// Configuration du middleware CSRF
$excludedPaths = [
    '#^/api/webhook#',
    '#^/api/external#'
];
$csrfMiddleware = new CsrfMiddleware($excludedPaths);

// Ajouter le middleware à l'application
$app->add($csrfMiddleware);

3. Utilisation dans un formulaire

<form method="POST" action="/submit">
    <!-- Ajouter le token CSRF -->
    <input type="hidden" name="csrf_token" value="<?php echo Session::get('token')[0]['value'] ?? ''; ?>">
    <!-- Vos champs de formulaire -->
</form>

Architecture

Composants principaux

  1. Application

    • Gère le pipeline de middleware
    • Traite les requêtes entrantes
  2. HttpRequest

    • Implémente PSR-7 ServerRequestInterface
    • Gère les données de requête ($_GET, $_POST, etc.)
  3. Middleware

    • CsrfMiddleware : Protection contre les attaques CSRF
    • RouterMiddleware : Gestion des routes
    • NotFoundMiddleware : Gestion des pages 404
  4. Façades

    • Request : Accès simplifié aux données de requête
    • Session : Gestion des sessions
    • Response : Création et envoi de réponses

Exemples d'utilisation

Récupération des données de requête

// Données GET
$value = Request::query('param');

// Données POST
$value = Request::input('field');

// Sélection de champs spécifiques
$data = Request::only(['username', 'email']);

Gestion des sessions

use Cocoon\Http\Facades\Session;

// Définir une valeur
Session::set('key', 'value');

// Récupérer une valeur
$value = Session::get('key');

// Message flash
Session::setFlash('success', 'Opération réussie');

Tests

Pour exécuter les tests unitaires :

vendor/bin/phpunit

Sécurité

Le composant intègre plusieurs mesures de sécurité :

  • Protection CSRF automatique
  • Validation des tokens
  • Nettoyage des données de session
  • Messages d'erreur sécurisés

Contribution

Les contributions sont les bienvenues ! Veuillez :

  1. Fork le projet
  2. Créer une branche pour votre fonctionnalité
  3. Commiter vos changements
  4. Pousser vers la branche
  5. Créer une Pull Request

Licence

MIT License. Voir le fichier LICENSE pour plus de détails.

Support

Pour toute question ou problème :

  1. Consultez la documentation
  2. Ouvrez une issue sur GitHub
  3. Contactez l'équipe de développement

Développé avec ❤️ par l'équipe Cocoon

统计信息

  • 总下载量: 5
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2023-11-12