PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 4.16.3
GiveWP – Donation Plugin and Fundraising Platform v4.16.3
4.16.3 4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / vendor / stripe / stripe-php / lib / ApiOperations / Request.php
give / vendor / stripe / stripe-php / lib / ApiOperations Last commit date
All.php 4 years ago Create.php 4 years ago Delete.php 4 years ago NestedResource.php 4 years ago Request.php 2 years ago Retrieve.php 4 years ago Search.php 2 years ago Update.php 4 years ago
Request.php
101 lines
1 <?php
2
3 namespace Stripe\ApiOperations;
4
5 /**
6 * Trait for resources that need to make API requests.
7 *
8 * This trait should only be applied to classes that derive from StripeObject.
9 */
10 trait Request
11 {
12 /**
13 * @param null|array|mixed $params The list of parameters to validate
14 *
15 * @throws \Stripe\Exception\InvalidArgumentException if $params exists and is not an array
16 */
17 protected static function _validateParams($params = null)
18 {
19 if ($params && !\is_array($params)) {
20 $message = 'You must pass an array as the first argument to Stripe API '
21 . 'method calls. (HINT: an example call to create a charge '
22 . "would be: \"Stripe\\Charge::create(['amount' => 100, "
23 . "'currency' => 'usd', 'source' => 'tok_1234'])\")";
24
25 throw new \Stripe\Exception\InvalidArgumentException($message);
26 }
27 }
28
29 /**
30 * @param string $method HTTP method ('get', 'post', etc.)
31 * @param string $url URL for the request
32 * @param array $params list of parameters for the request
33 * @param null|array|string $options
34 *
35 * @throws \Stripe\Exception\ApiErrorException if the request fails
36 *
37 * @return array tuple containing (the JSON response, $options)
38 */
39 protected function _request($method, $url, $params = [], $options = null)
40 {
41 $opts = $this->_opts->merge($options);
42 list($resp, $options) = static::_staticRequest($method, $url, $params, $opts);
43 $this->setLastResponse($resp);
44
45 return [$resp->json, $options];
46 }
47
48 /**
49 * @param string $method HTTP method ('get', 'post', etc.)
50 * @param string $url URL for the request
51 * @param callable $readBodyChunk function that will receive chunks of data from a successful request body
52 * @param array $params list of parameters for the request
53 * @param null|array|string $options
54 *
55 * @throws \Stripe\Exception\ApiErrorException if the request fails
56 */
57 protected function _requestStream($method, $url, $readBodyChunk, $params = [], $options = null)
58 {
59 $opts = $this->_opts->merge($options);
60 static::_staticStreamingRequest($method, $url, $readBodyChunk, $params, $opts);
61 }
62
63 /**
64 * @param string $method HTTP method ('get', 'post', etc.)
65 * @param string $url URL for the request
66 * @param array $params list of parameters for the request
67 * @param null|array|string $options
68 *
69 * @throws \Stripe\Exception\ApiErrorException if the request fails
70 *
71 * @return array tuple containing (the JSON response, $options)
72 */
73 protected static function _staticRequest($method, $url, $params, $options)
74 {
75 $opts = \Stripe\Util\RequestOptions::parse($options);
76 $baseUrl = isset($opts->apiBase) ? $opts->apiBase : static::baseUrl();
77 $requestor = new \Stripe\ApiRequestor($opts->apiKey, $baseUrl);
78 list($response, $opts->apiKey) = $requestor->request($method, $url, $params, $opts->headers);
79 $opts->discardNonPersistentHeaders();
80
81 return [$response, $opts];
82 }
83
84 /**
85 * @param string $method HTTP method ('get', 'post', etc.)
86 * @param string $url URL for the request
87 * @param callable $readBodyChunk function that will receive chunks of data from a successful request body
88 * @param array $params list of parameters for the request
89 * @param null|array|string $options
90 *
91 * @throws \Stripe\Exception\ApiErrorException if the request fails
92 */
93 protected static function _staticStreamingRequest($method, $url, $readBodyChunk, $params, $options)
94 {
95 $opts = \Stripe\Util\RequestOptions::parse($options);
96 $baseUrl = isset($opts->apiBase) ? $opts->apiBase : static::baseUrl();
97 $requestor = new \Stripe\ApiRequestor($opts->apiKey, $baseUrl);
98 $requestor->requestStream($method, $url, $readBodyChunk, $params, $opts->headers);
99 }
100 }
101