PluginProbe ʕ •ᴥ•ʔ
Booking for Appointments and Events Calendar – Amelia / 1.2.20
Booking for Appointments and Events Calendar – Amelia v1.2.20
2.4.4 2.4.3 2.4.2 2.4.1 2.4 trunk 1.2.1 1.2.10 1.2.11 1.2.12 1.2.13 1.2.14 1.2.15 1.2.16 1.2.17 1.2.18 1.2.19 1.2.2 1.2.20 1.2.21 1.2.22 1.2.23 1.2.24 1.2.25 1.2.26 1.2.27 1.2.28 1.2.29 1.2.3 1.2.30 1.2.31 1.2.32 1.2.33 1.2.34 1.2.35 1.2.36 1.2.37 1.2.38 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 2.0 2.0.1 2.0.2 2.1 2.1.1 2.1.2 2.1.3 2.2 2.2.1 2.3
ameliabooking / vendor / php-http / message / src / Authentication / QueryParam.php
ameliabooking / vendor / php-http / message / src / Authentication Last commit date
AutoBasicAuth.php 3 years ago BasicAuth.php 3 years ago Bearer.php 3 years ago Chain.php 3 years ago Matching.php 3 years ago QueryParam.php 3 years ago RequestConditional.php 3 years ago Wsse.php 3 years ago
QueryParam.php
51 lines
1 <?php
2
3 namespace AmeliaHttp\Message\Authentication;
4
5 use AmeliaHttp\Message\Authentication;
6 use AmeliaPsr\Http\Message\RequestInterface;
7
8 /**
9 * Authenticate a PSR-7 Request by adding parameters to its query.
10 *
11 * Note: Although in some cases it can be useful, we do not recommend using query parameters for authentication.
12 * Credentials in the URL is generally unsafe as they are not encrypted, anyone can see them.
13 *
14 * @author Márk Sági-Kazár <mark.sagikazar@gmail.com>
15 */
16 final class QueryParam implements Authentication
17 {
18 /**
19 * @var array
20 */
21 private $params = [];
22
23 /**
24 * @param array $params
25 */
26 public function __construct(array $params)
27 {
28 $this->params = $params;
29 }
30
31 /**
32 * {@inheritdoc}
33 */
34 public function authenticate(RequestInterface $request)
35 {
36 $uri = $request->getUri();
37 $query = $uri->getQuery();
38 $params = [];
39
40 parse_str($query, $params);
41
42 $params = array_merge($params, $this->params);
43
44 $query = http_build_query($params, "", '&');
45
46 $uri = $uri->withQuery($query);
47
48 return $request->withUri($uri);
49 }
50 }
51