pond5/async-request-bundle
AsyncRequestBundle provides asynchronous HTTP request handling for Symfony/PHP applications, enabling multiple requests to run in parallel and responses to be processed without blocking. It helps reduce latency in I/O-heavy integrations and improve throughput for API-heavy workflows.
Install the package via Composer and, if the package ships configuration, publish it with php artisan vendor:publish. Start with the README and the notification class/trait that adds request support; that is where the serialization behavior lives.
The first use case is passing the current request into a notification so it can be handled later, including from a queued notification. In a controller or form request, read the body before dispatching:
$request->getContent(); // required before the request is serialized
Notification::send($user, new RequestAwareNotification($request));
If you are upgrading to 1.1, the key change is that the request body must be read explicitly before dispatch. Add $request->getContent() anywhere before the notification is sent.
getContent() if you need the body, then pass the request into the notification. This works for both synchronous and queued notifications.FormRequest extends Illuminate\Http\Request, so the same pattern applies. Call getContent() before dispatch if the notification needs the raw body.ShouldQueue, the request is serialized at dispatch time. Read the body before dispatch so the deserialized request contains it.php://input constraint.php://input is single-read: PHP’s php://input stream cannot be rewound. Laravel’s Request may not have read the body yet when the notification is dispatched. The 1.1 release note is explicit: call Request::getContent() before dispatching a notification with the request object. Otherwise the body is not read from php://input and will not be available after deserializing the request.getContent() was called before dispatch. Inspect the serialized payload if the package provides a way to do so.getContent() as a precondition whenever the request object is passed into the notification layer.How can I help you explore Laravel packages today?