PluginProbe
HyperPay Payments / 5.3.0
HyperPay Payments v5.3.0
6.6.0 trunk 1.7 1.8 1.8.1 1.8.2 1.8.3 1.8.4 1.8.5 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.0.0 2.1.0 2.2.0 2.3.0 2.3.1 2.3.2 2.3.3 3.0.0 3.0.5 4.0.0 4.0.2 All 34 releases
hyperpay-gateways / src / App / Http.php

Http.php in HyperPay Payments 5.3.0, at src/App/Http.php

43 lines 1.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace Hyperpay\Gateways\App;
4 if ( ! defined( 'ABSPATH' ) ) exit;
5
6 use WP_Error;
7 use Hyperpay\Gateways\App\Log;
8
9 final class Http
10 {
11
12 public static function post($url, $data = [])
13 {
14 $response = wp_remote_post($url, $data);
15 return self::handelResponse($response);
16 }
17
18 public static function get($url, $options = [])
19 {
20 $response = wp_remote_get($url, $options);
21 return self::handelResponse($response);
22 }
23
24 public static function handelResponse($response)
25 {
26 $result = json_decode(wp_remote_retrieve_body($response), true);
27
28 if (is_wp_error($response)) {
29 $error = $response->get_error_message();
30 Log::write(["error" => $error, "response" => $result]);
31
32 return [
33 "result" => [
34 "code" => wp_remote_retrieve_response_code($response),
35 "description" => $error
36 ]
37 ];
38 }
39
40 return $result;
41 }
42 }
43