Skip to content

Commit 053cb7d

Browse files
committed
Always send request after response
1 parent b54428a commit 053cb7d

File tree

3 files changed

+35
-29
lines changed

3 files changed

+35
-29
lines changed

CHANGELOG.md

+7
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
# Changelog
22

3+
## [0.3.1] - 2022-07-02
4+
5+
### Changed
6+
7+
- Always send request after response.
8+
39
## [0.3.0] - 2022-07-02
410

511
### Added
@@ -50,6 +56,7 @@
5056

5157
- TrackPageview middleware.
5258

59+
[0.3.1]: https://github.com/pirsch-analytics/laravel-pirsch/releases/tag/0.3.1
5360
[0.3.0]: https://github.com/pirsch-analytics/laravel-pirsch/releases/tag/0.3.0
5461
[0.2.2]: https://github.com/pirsch-analytics/laravel-pirsch/releases/tag/0.2.2
5562
[0.2.1]: https://github.com/pirsch-analytics/laravel-pirsch/releases/tag/0.2.1

src/Http/Middleware/TrackPageview.php

+2-5
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,9 @@
99
class TrackPageview
1010
{
1111
public function handle(Request $request, Closure $next): mixed
12-
{
13-
return $next($request);
14-
}
15-
16-
public function terminate(Request $request, mixed $response): void
1712
{
1813
Pirsch::track();
14+
15+
return $next($request);
1916
}
2017
}

src/Pirsch.php

+26-24
Original file line numberDiff line numberDiff line change
@@ -10,30 +10,32 @@ public static function track(
1010
?string $name = null,
1111
?array $meta = null,
1212
): void {
13-
if (! config('pirsch.token')) {
14-
return;
15-
}
13+
app()->terminating(function () use ($name, $meta) {
14+
if (! config('pirsch.token')) {
15+
return;
16+
}
1617

17-
Http::withToken(config('pirsch.token'))
18-
->retry(
19-
times: 3,
20-
sleepMilliseconds: 100,
21-
)
22-
->post(
23-
url: 'https://api.pirsch.io/api/v1/'.($name === null ? 'hit' : 'event'),
24-
data: [
25-
'url' => request()->fullUrl(),
26-
'ip' => request()->ip(),
27-
'user_agent' => request()->userAgent(),
28-
'accept_language' => request()->headers->get('Accept-Language'),
29-
'referrer' => request()->headers->get('Referer'),
30-
...$name === null
31-
? []
32-
: [
33-
'event_name' => $name,
34-
'event_meta' => $meta,
35-
],
36-
],
37-
);
18+
Http::withToken(config('pirsch.token'))
19+
->retry(
20+
times: 3,
21+
sleepMilliseconds: 100,
22+
)
23+
->post(
24+
url: 'https://api.pirsch.io/api/v1/'.($name === null ? 'hit' : 'event'),
25+
data: [
26+
'url' => request()->fullUrl(),
27+
'ip' => request()->ip(),
28+
'user_agent' => request()->userAgent(),
29+
'accept_language' => request()->headers->get('Accept-Language'),
30+
'referrer' => request()->headers->get('Referer'),
31+
...$name === null
32+
? []
33+
: [
34+
'event_name' => $name,
35+
'event_meta' => $meta,
36+
],
37+
],
38+
);
39+
});
3840
}
3941
}

0 commit comments

Comments
 (0)