|
1 | 1 | <?php |
2 | 2 | /** |
3 | 3 | * ddMakeHttpRequest |
4 | | - * @version 2.0 (2019-09-23) |
| 4 | + * @version 2.1 (2020-02-15) |
5 | 5 | * |
6 | 6 | * @see README.md |
7 | 7 | * |
8 | 8 | * @link https://code.divandesign.biz/modx/ddmakehttprequest |
9 | 9 | * |
10 | | - * @copyright 2011–2019 DivanDesign {@link http://www.DivanDesign.biz } |
| 10 | + * @copyright 2011–2020 DivanDesign {@link http://www.DivanDesign.biz } |
11 | 11 | */ |
12 | 12 |
|
13 | 13 | //Include (MODX)EvolutionCMS.libraries.ddTools |
14 | | -require_once($modx->getConfig('base_path') . 'assets/libs/ddTools/modx.ddtools.class.php'); |
| 14 | +require_once( |
| 15 | + $modx->getConfig('base_path') . |
| 16 | + 'assets/libs/ddTools/modx.ddtools.class.php' |
| 17 | +); |
15 | 18 |
|
16 | 19 | //The snippet must return an empty string even if result is absent |
17 | 20 | $snippetResult = ''; |
18 | 21 |
|
19 | 22 | //Для обратной совместимости |
20 | | -extract(ddTools::verifyRenamedParams( |
| 23 | +extract(\ddTools::verifyRenamedParams( |
21 | 24 | $params, |
22 | 25 | [ |
23 | 26 | 'method' => 'metod', |
24 | 27 | 'userAgent' => 'uagent', |
25 | | - 'postData' => 'post' |
| 28 | + 'postData' => 'post', |
| 29 | + 'useCookie' => 'cookie' |
26 | 30 | ] |
27 | 31 | )); |
28 | 32 |
|
|
43 | 47 | isset($headers) && |
44 | 48 | !is_array($headers) |
45 | 49 | ){ |
46 | | - $headers = ddTools::encodedStringToArray($headers); |
| 50 | + $headers = \ddTools::encodedStringToArray($headers); |
47 | 51 | } |
48 | 52 |
|
49 | 53 | $timeout = |
|
169 | 173 | //И обрабатывать её можно |
170 | 174 | !$sendRawPostData |
171 | 175 | ){ |
172 | | - $postData = ddTools::encodedStringToArray($postData); |
| 176 | + $postData = \ddTools::encodedStringToArray($postData); |
173 | 177 | } |
174 | 178 |
|
175 | 179 | //Если он массив — делаем query string |
|
178 | 182 | //Сформируем массив для отправки, предварительно перекодировав |
179 | 183 | foreach ( |
180 | 184 | $postData as |
181 | | - $key => $value |
| 185 | + $key => |
| 186 | + $value |
182 | 187 | ){ |
183 | | - $postData_mas[] = $key . '=' . urlencode($value); |
| 188 | + $postData_mas[] = |
| 189 | + $key . |
| 190 | + '=' . |
| 191 | + urlencode($value) |
| 192 | + ; |
184 | 193 | } |
185 | 194 | $postData = implode( |
186 | 195 | '&', |
|
213 | 222 | ); |
214 | 223 | } |
215 | 224 |
|
| 225 | + //Если задано использование печенек |
| 226 | + if ( |
| 227 | + isset($useCookie) && |
| 228 | + $useCookie == '1' |
| 229 | + ){ |
| 230 | + curl_setopt( |
| 231 | + $ch, |
| 232 | + CURLOPT_COOKIEFILE, |
| 233 | + ( |
| 234 | + $modx->getConfig('base_path') . |
| 235 | + 'assets/cache/ddMakeHttpRequest_cookie.txt' |
| 236 | + ) |
| 237 | + ); |
| 238 | + curl_setopt( |
| 239 | + $ch, |
| 240 | + CURLOPT_COOKIEJAR, |
| 241 | + ( |
| 242 | + $modx->getConfig('base_path') . |
| 243 | + 'assets/cache/ddMakeHttpRequest_cookie.txt' |
| 244 | + ) |
| 245 | + ); |
| 246 | + } |
| 247 | + |
216 | 248 | //Если задан прокси-сервер |
217 | 249 | if(!empty($proxy)){ |
218 | 250 | curl_setopt( |
|
0 commit comments