incraigulous/request-hooks
Composer 安装命令:
composer require incraigulous/request-hooks
包简介
Modify application state for feature testing by using query parameters.
README 文档
README
Modify Laravel application state for browser testing by using query parameters.
How it works
Create a hook
Here's an example hook class that logs in a user if the test_login query string is set. That means if your feature testing, anytime you call a url like yourapp.dev/dashboard?test_login=true, the user will be logged in before the request is handled.
<?php
namespace App\RequestHooks;
use Illuminate\Http\Request;
use App\User;
use Incraigulous\RequestHooks\Contracts\RequestHook;
class Login implements RequestHook
{
/**
* @var Request
*/
private $request;
function __construct(Request $request)
{
$this->request = $request;
}
/**
* Should the hook fire?
* @return bool
*/
public function shouldHandle()
{
if (!$this->request->test_login) return false;
if (auth()->check()) return false;
return true;
}
/**
* Do whatever action the hook does
*/
public function handle()
{
$user = user::first();
auth()->login($user);
}
}
Register your hook
in config/requestHooks.php:
return [
/**
* Which app.env environments should be considered testing environments by the request-hooks test middleware?
*/
'testEnvironments' => ['development', 'testing', 'staging', 'local'],
/**
* Register your request hooks
*/
'hooks' => [
\App\RequestHooks\Login::class
]
];
Installation
composer require incraigulous/request-hooks
Register the service provider:
'providers' => [
...,
Incraigulous\RequestHooks\RequestHooksServiceProvider::class,
,,.,
]
Register the middleware as global moddleware in the http kernel:
$middleware => [
...,
Incraigulous\RequestHooks\TestingMiddleware::class
,,.,
]
Alternatively, you could extend Incraigulous\RequestHooks\TestingMiddleware or write your own if you need custom functionality.
Configuration
testEnvironments: An array of environment names (see the app.env configuration setting) that hooks should fire in.
hooks: Register your hook classes.
incraigulous/request-hooks 适用场景与选型建议
incraigulous/request-hooks 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 208 次下载、GitHub Stars 达 0, 最近一次更新时间为 2017 年 05 月 30 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 incraigulous/request-hooks 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 incraigulous/request-hooks 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 208
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 1
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2017-05-30