zhuud / laravel-route-proxy
Multi-route bulk call
v1.3
2018-05-31 07:43 UTC
Requires
- php: >=7.0
- laravel/framework: ~5.3
This package is auto-updated.
Last update: 2024-09-29 05:27:45 UTC
README
环境
此项目支持PHP5.6,更改其中 ??
运算符即可
使用
app/Exceptions/Handler.php 文件 重写此方法
use Symfony\Component\Debug\Exception\FatalErrorException;
/**
* Render an exception into an HTTP response.
*
* @param \Illuminate\Http\Request $request
* @param Exception $exception
* @return Exception|\Illuminate\Http\JsonResponse|\Symfony\Component\HttpFoundation\Response
*/
public function render($request, Exception $exception)
{
// api路由错误直接返回
if ($request->is('api*')) {
// 程序错误直接退出
if ($exception instanceof FatalErrorException) {
return response()->json([
'code' => $exception->getCode() ?? 1000000,
'message' => $exception->getMessage() ?? 'Exception Unknown.',
]);
}
return $exception;
}
return parent::render($request, $exception);
}
请求
{"foo.a":{"params1":[1,2],"params2":"123"},"foo.b":{"params":"asd"}}
路由
Route::post('/', 'FooController@index');
Route::post('/a', 'FooController@a')->name('foo.a');
Route::post('/b', 'FooController@b')->name('foo.b');
方法
/**
* @param \Illuminate\Http\Request $request
* @param \Illuminate\Support\Facades\Route $route
* @return mixed
*/
public function index(Request $request, Route $route)
{
return RouteProxy::parse()
->setMaxCalls(8)
->verMaxCalls($request)
->dispatch($request,$route::getRoutes())
->getResult();
}