Я установил следующие пакеты композитора:Как я могу использовать pSR7 в PHP промежуточного программного
"require": {
"beatswitch/lock": "0.2.0",
"league/event": "2.1.2",
"oscarotero/psr7-middlewares": "v3.16.1",
"pdepend/pdepend": "2.2.4",
"sebastian/phpcpd": "2.0.4",
"instaclick/php-code-sniffer": "1.4.2",
"phploc/phploc": "3.0.1",
"phpmd/phpmd": "2.4.3",
"phpunit/phpunit": "5.5.x-dev",
"phpunit/phpunit-selenium": "3.0.2",
"league/route": "3.x-dev",
"guzzlehttp/psr7": "1.3.0",
"relay/relay": "2.x-dev",
"monolog/monolog": "2.0.x-dev",
"aura/session": "3.x-dev"
}
и теперь я хочу, чтобы «склеить» эти пакеты вместе с пакетами pSR7-промежуточных программным. К сожалению, я не смог найти информацию о том, как использовать каждую библиотеку из этих посредников вне диспетчера. Основные функции, такие как Access Logging и Routing, уже без проблем.
I интегрированный Aura Sessions как следующее:
Middleware::AuraSession(),
->factory(new Aura\Session\SessionFactory) //(optional) Intance of Aura\Session\SessionFactory
->name('my-session-name'), //(optional) custom session name
function ($request, $response, $next) {
//Get the session instance
$session = AuraSession::getSession($request);
return $response;
}
Это работает с Relayphp определенно и жрать \ Http интерфейс сообщений. Сбрасывание переменной сеанса дает мне базовые данные сеанса с пустыми значениями, потому что я ничего не установил.
К сожалению, я не мог найти какой-либо простой информации о том, как я могу установить сеанс внутри промежуточного программного обеспечения. В конце я получил ответ и могу получить его тело и заголовки, но не больше.
Как получить доступ к функции, установленной в массиве middlewares? Я также попытался просто использовать класс AuraSession и установить переменные над этим классом, но он не работает. Или мне нужно установить все сеансы перед отправкой промежуточных продуктов вместе? Но как они тогда интегрируются в нее?