Vous êtes connecté en tant que anonymous Se Deconnecter
Browse code

mise en place des actions de vue, du loggeur du MVC test des resultat des reponse Rest avec les methode GET PUT DELETE POST avec curl

FIXME: appel curl ou fopen d'une methode http depuis une action ou un controlleur.

TODO: sécuriser les accès HTTP1.1 par un fichier config similaire a l'applet Discourse faite pour Tinternet

TODO: ajouter un plug-in symfony permettant de charger un utilisateur dans les apps a partir de l'authentification multiple

TODO: lire les documentation officielles provenant des 4 plate-formes tranquillement afin de comprendre commet doit on tester ces type d'auth quitte a créé un sous domaine particulier directement hebergé sur gittea
-->Sécuriser le serveur de dev

Emmanuel ROY authored on 04/12/2019 15:21:19
Showing 1 changed files
1 1
deleted file mode 100644
... ...
@@ -1,176 +0,0 @@
1
-<?php
2
-
3
-
4
-namespace MVC\Classe;
5
-
6
-
7
-/**
8
- * Class Response
9
- *
10
- * example use:
11
- * $data = array('a','b','c');
12
- *
13
- * Three Way to send a request
14
- *
15
- * $request = new Response('http://myurl','mymethod');
16
- * $request->addContent($data);
17
- * $request->send();
18
- *
19
- * OR
20
- *
21
- * $request = new Response('http://myurl');
22
- * (
23
- * $request->createContext('mymethod')
24
- * $request->addContent($data);
25
- * $request->send();
26
- * ) OR (
27
- * $request->get($data);
28
- * $request->post($data);
29
- * $request->put($data);
30
- * $request->delete($data);
31
- *
32
- *
33
- * OR
34
- *
35
- * $request = new Response();
36
- * $request->setUrl('http://myurl')->get($data)
37
- * $request->setUrl('http://myurl')->post($data)
38
- * $request->setUrl('http://myurl')->put($data)
39
- * $request->setUrl('http://myurl')->delete($data)
40
- *
41
- * @package MVC\Classe
42
- */
43
-class Response
44
-{
45
-    protected $url;
46
-    protected $options;
47
-
48
-    /**
49
-     * Response multi-constructor.
50
-     */
51
-    public function __construct()
52
-    {
53
-        $argumentFunction = func_get_args();
54
-        $nbParamsFunction = func_num_args();
55
-        if (method_exists($this, $function = '__construct' . $nbParamsFunction)) {
56
-            call_user_func_array(array($this, $function), $argumentFunction);
57
-        }
58
-    }
59
-
60
-    /**
61
-     * @return $this
62
-     */
63
-    public function __construct0()
64
-    {
65
-        return $this;
66
-    }
67
-
68
-    /**
69
-     * @param $url
70
-     * @return $this
71
-     */
72
-    public function __construct1($url)
73
-    {
74
-        $this->url = $url;
75
-        return $this;
76
-    }
77
-
78
-    /**
79
-     * Response constructor.
80
-     * @param $url URI
81
-     * @param $method POST,...
82
-     * @param $options
83
-     * @return $this
84
-     */
85
-    public function __construct2($url, $method)
86
-    {
87
-        $this->url = $url;
88
-
89
-        // utilisez 'http' même si vous envoyez la requête sur https:// ...
90
-        $this->options = array(
91
-            'http' => array(
92
-                'header' => "Content-type: application/x-www-form-urlencoded\r\n",
93
-                'method' => $method,
94
-            )
95
-        );
96
-        return $this;
97
-    }
98
-
99
-    public function setUrl($url)
100
-    {
101
-        $this->url = $url;
102
-        return $this;
103
-    }
104
-
105
-    public function setGetParamsUrl($url, $params = array())
106
-    {
107
-        $this->url = $url . (strpos($url, '?') ? '&' : '?') . http_build_query($params);
108
-        return $this;
109
-    }
110
-
111
-    public function get($params = array())
112
-    {
113
-        return $this->replaceContext('GET')->addContent($params)->send();
114
-    }
115
-
116
-    public function send()
117
-    {
118
-
119
-        $context = stream_context_create($this->options);
120
-        $result = file_get_contents($this->url, false, $context);
121
-        if ($result === FALSE) {
122
-            /* Handle error */
123
-            return false;
124
-        } else {
125
-            return true;
126
-        }
127
-    }
128
-
129
-    /**
130
-     * @param $data Array
131
-     */
132
-    public function addContent($data)
133
-    {
134
-        //Exemple
135
-        //$this->data = array('name' => 'PEC', 'description' => 'Pencil 2H', 'price' => '2.25', 'category' => '9');
136
-        //'content' => http_build_query($data)
137
-        if (is_array($data)) {
138
-            $pContent = http_build_query($data);
139
-        }
140
-        $this->options['http']['content'] = $data;
141
-        return $this;
142
-    }
143
-
144
-    public function replaceContext($method)
145
-    {
146
-        return $this->createContext($method);
147
-    }
148
-
149
-    public function createContext($method)
150
-    {
151
-        // utilisez 'http' même si vous envoyez la requête sur https:// ...
152
-        $this->options = array(
153
-            'http' => array(
154
-                'header' => "Content-type: application/x-www-form-urlencoded\r\n",
155
-                'method' => $method,
156
-            )
157
-        );
158
-        return $this;
159
-    }
160
-
161
-    public function post($params = array())
162
-    {
163
-        return $this->replaceContext('POST')->addContent($params)->send();
164
-    }
165
-
166
-    public function put($params = array())
167
-    {
168
-        return $this->replaceContext('PUT')->addContent($params)->send();
169
-    }
170
-
171
-    public function delete($params = array())
172
-    {
173
-        return $this->replaceContext('DELETE')->addContent($params)->send();
174
-    }
175
-
176
-}
177 0
\ No newline at end of file
Browse code

mise en place des requètes HTTP1.1 dans le core du MVC afin qu'elles soient utilisable simplement

TODO: tester les requètes HTTP1.1 , sécuriser les accès par un fichier config similaire a l'applet Discourse faite pour Tinternet

TODO: ajouter un plug-in symfony permettant de charger un utilisateur dans les apps a partir de l'authentification multiple

TODO: lire les documentation officielles provenant des 4 plate-formes tranquillement afin de comprendre commet doit on tester ces type d'auth quitte a créé un sous domaine particulier directement hebergé sur gittea
-->Sécuriser le serveur de dev

Emmanuel ROY authored on 02/12/2019 19:01:38
Showing 1 changed files
... ...
@@ -104,7 +104,7 @@ class Response
104 104
 
105 105
     public function setGetParamsUrl($url, $params = array())
106 106
     {
107
-        $this->url = $url . (strpos($this->url, '?') ? '' : '?') . http_build_query($params);
107
+        $this->url = $url . (strpos($url, '?') ? '&' : '?') . http_build_query($params);
108 108
         return $this;
109 109
     }
110 110
 
Browse code

Ajout de deux classe permettant de genrer des requète REST au sein de l'application

TODO: tester et mettre en place ces requètes dans le core du MVC afin qu'elles soient utilisable simplement et de facon protégé par un fichier de config

TODO: ajouter un plug-in symfony permettant de charger un utilisateur dans les apps a partir de l'authentification multiple

TODO: lire les documentation officielles provenant des 4 plate-formes tranquillement afin de comprendre commet doit on tester ces type d'auth quitte a créé un sous domaine particulier directement hebergé sur gittea
-->Sécuriser le serveur de dev

Emmanuel ROY authored on 02/12/2019 17:33:20
Showing 1 changed files
1 1
new file mode 100644
... ...
@@ -0,0 +1,176 @@
1
+<?php
2
+
3
+
4
+namespace MVC\Classe;
5
+
6
+
7
+/**
8
+ * Class Response
9
+ *
10
+ * example use:
11
+ * $data = array('a','b','c');
12
+ *
13
+ * Three Way to send a request
14
+ *
15
+ * $request = new Response('http://myurl','mymethod');
16
+ * $request->addContent($data);
17
+ * $request->send();
18
+ *
19
+ * OR
20
+ *
21
+ * $request = new Response('http://myurl');
22
+ * (
23
+ * $request->createContext('mymethod')
24
+ * $request->addContent($data);
25
+ * $request->send();
26
+ * ) OR (
27
+ * $request->get($data);
28
+ * $request->post($data);
29
+ * $request->put($data);
30
+ * $request->delete($data);
31
+ *
32
+ *
33
+ * OR
34
+ *
35
+ * $request = new Response();
36
+ * $request->setUrl('http://myurl')->get($data)
37
+ * $request->setUrl('http://myurl')->post($data)
38
+ * $request->setUrl('http://myurl')->put($data)
39
+ * $request->setUrl('http://myurl')->delete($data)
40
+ *
41
+ * @package MVC\Classe
42
+ */
43
+class Response
44
+{
45
+    protected $url;
46
+    protected $options;
47
+
48
+    /**
49
+     * Response multi-constructor.
50
+     */
51
+    public function __construct()
52
+    {
53
+        $argumentFunction = func_get_args();
54
+        $nbParamsFunction = func_num_args();
55
+        if (method_exists($this, $function = '__construct' . $nbParamsFunction)) {
56
+            call_user_func_array(array($this, $function), $argumentFunction);
57
+        }
58
+    }
59
+
60
+    /**
61
+     * @return $this
62
+     */
63
+    public function __construct0()
64
+    {
65
+        return $this;
66
+    }
67
+
68
+    /**
69
+     * @param $url
70
+     * @return $this
71
+     */
72
+    public function __construct1($url)
73
+    {
74
+        $this->url = $url;
75
+        return $this;
76
+    }
77
+
78
+    /**
79
+     * Response constructor.
80
+     * @param $url URI
81
+     * @param $method POST,...
82
+     * @param $options
83
+     * @return $this
84
+     */
85
+    public function __construct2($url, $method)
86
+    {
87
+        $this->url = $url;
88
+
89
+        // utilisez 'http' même si vous envoyez la requête sur https:// ...
90
+        $this->options = array(
91
+            'http' => array(
92
+                'header' => "Content-type: application/x-www-form-urlencoded\r\n",
93
+                'method' => $method,
94
+            )
95
+        );
96
+        return $this;
97
+    }
98
+
99
+    public function setUrl($url)
100
+    {
101
+        $this->url = $url;
102
+        return $this;
103
+    }
104
+
105
+    public function setGetParamsUrl($url, $params = array())
106
+    {
107
+        $this->url = $url . (strpos($this->url, '?') ? '' : '?') . http_build_query($params);
108
+        return $this;
109
+    }
110
+
111
+    public function get($params = array())
112
+    {
113
+        return $this->replaceContext('GET')->addContent($params)->send();
114
+    }
115
+
116
+    public function send()
117
+    {
118
+
119
+        $context = stream_context_create($this->options);
120
+        $result = file_get_contents($this->url, false, $context);
121
+        if ($result === FALSE) {
122
+            /* Handle error */
123
+            return false;
124
+        } else {
125
+            return true;
126
+        }
127
+    }
128
+
129
+    /**
130
+     * @param $data Array
131
+     */
132
+    public function addContent($data)
133
+    {
134
+        //Exemple
135
+        //$this->data = array('name' => 'PEC', 'description' => 'Pencil 2H', 'price' => '2.25', 'category' => '9');
136
+        //'content' => http_build_query($data)
137
+        if (is_array($data)) {
138
+            $pContent = http_build_query($data);
139
+        }
140
+        $this->options['http']['content'] = $data;
141
+        return $this;
142
+    }
143
+
144
+    public function replaceContext($method)
145
+    {
146
+        return $this->createContext($method);
147
+    }
148
+
149
+    public function createContext($method)
150
+    {
151
+        // utilisez 'http' même si vous envoyez la requête sur https:// ...
152
+        $this->options = array(
153
+            'http' => array(
154
+                'header' => "Content-type: application/x-www-form-urlencoded\r\n",
155
+                'method' => $method,
156
+            )
157
+        );
158
+        return $this;
159
+    }
160
+
161
+    public function post($params = array())
162
+    {
163
+        return $this->replaceContext('POST')->addContent($params)->send();
164
+    }
165
+
166
+    public function put($params = array())
167
+    {
168
+        return $this->replaceContext('PUT')->addContent($params)->send();
169
+    }
170
+
171
+    public function delete($params = array())
172
+    {
173
+        return $this->replaceContext('DELETE')->addContent($params)->send();
174
+    }
175
+
176
+}
0 177
\ No newline at end of file