thecodingmachine/symfony-psr15-bridge 问题修复 & 功能扩展

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

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

thecodingmachine/symfony-psr15-bridge

Composer 安装命令:

composer require thecodingmachine/symfony-psr15-bridge

包简介

A bridge between Symfony middlewares (StackPHP) and compliant middleware for converting Symfony Http abstractions to PSR-15 and back.

README 文档

README

Bridges between Symfony HttpKernel (a.k.a. StackPHP Middleware) and PSR-15 middlewares.

Latest Stable Version Total Downloads Latest Unstable Version License Scrutinizer Code Quality Build Status Coverage Status

Those adapters are built on top of the existing symfony/psr-http-message-bridge that bridges Symfony and PSR-7 HTTP messages.

Installation

The recommended way to install symfony-psr15-bridge is through Composer:

composer require thecodingmachine/symfony-psr15-bridge

Usage

By default, the Symfony HttpFoundation and HttpKernel are used. For PSR-7, the Zend-Diactoros implementation is used. These implementations can be changed if needed.

Wrapping a HttpKernel

<?php

// Use the Psr15ToSymfonyBridge adapter
$psr15Middleware = new Psr15ToSymfonyBridge($yourHttpKernel);

// Handling PSR-7 requests
$psr7Response = $psr15Middleware->process($psr7Request, $dummyNextPsr7Middleware);

Important: Symfony Http Kernels do not have the notion of "next" middlewares. Therefore, the "next" PSR-7 middleware you pass to the process method will never be called.

Wrapping a PSR-7 callback

<?php

// Use the Psr15ToSymfonyBridge adapter
$symfonyKernel = new SymfonyToPsr15Bridge($nextSymfonyMiddleware, $yourPsr15Middleware);

// Handling Symfony requests
$symfonyResponse = $symfonyKernel->handle($symfonyRequest);

Note: the adapter's constructor takes 2 middlewares: the "next" Symfony middleware that will be called by the "delegate" psr15 feature and the psr15 middleware to be wrapped.

Other known middleware adapters

I initially planned to submit this project as a PR to h4cc/stack-psr7-bridge (that was developed before the notion of "PSR-7 middleware" was standardized in http-interop that was itself the precursor to PSR-15). I soon realized that this was in fact a complete rewrite so I decided to create a new project for it.

thecodingmachine/symfony-psr15-bridge 适用场景与选型建议

thecodingmachine/symfony-psr15-bridge 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 18.68k 次下载、GitHub Stars 达 16, 最近一次更新时间为 2018 年 05 月 28 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 thecodingmachine/symfony-psr15-bridge 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 thecodingmachine/symfony-psr15-bridge 我们能提供哪些服务?
定制开发 / 二次开发

基于 thecodingmachine/symfony-psr15-bridge 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 18.68k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 16
  • 点击次数: 6
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 16
  • Watchers: 9
  • Forks: 6
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2018-05-28