Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse code

melhorando metodo put para retornar mensagens de erro

commit 40c8c701f0d67bd7dc3f9e992510a04bb4844368 1 parent 8e304e5
fabioperrella fabioperrella authored

Showing 2 changed files with 75 additions and 72 deletions. Show diff stats Hide diff stats

  1. +1 0  .gitignore
  2. +74 72 php/EmailMarketingApi/src/lib/EmktCore.php
1  .gitignore
... ... @@ -1 +1,2 @@
1 1 .project
  2 +.settings
146 php/EmailMarketingApi/src/lib/EmktCore.php
@@ -8,77 +8,79 @@
8 8 */
9 9 class EmktCore {
10 10
11   - /**
12   - * @param string url
13   - */
14   - public function enviaRequisicaoGet($url) {
15   - $curl= curl_init();
16   - curl_setopt($curl, CURLOPT_URL, $url);
17   - curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
18   -
19   - $resultado_http= curl_exec($curl);
20   - $http_code= curl_getinfo($curl, CURLINFO_HTTP_CODE);
21   - curl_close($curl);
22   -
23   - $this->validaCodigoHttp($http_code, $resultado_http);
24   -
25   - return $resultado_http;
26   - }
27   -
28   - public function enviaRequisicaoPut($url, $dadosPut) {
29   - $ch= curl_init();
30   -
31   - $putData = tmpfile();
32   - fwrite($putData, $dadosPut);
33   - fseek($putData, 0);
34   -
35   - curl_setopt($ch, CURLOPT_URL, $url);
36   - curl_setopt($ch, CURLOPT_PUT, true);
37   - curl_setopt($ch, CURLOPT_INFILE, $putData);
38   - curl_setopt($ch, CURLOPT_INFILESIZE, strlen($dadosPut));
39   -
40   - $resultado_http = curl_exec($ch);
41   - $http_code= curl_getinfo($ch, CURLINFO_HTTP_CODE);
42   - fclose($putData);
43   - curl_close($ch);
44   -
45   - $this->validaCodigoHttp($http_code, $resultado_http);
46   -
47   - return $resultado_http;
48   - }
49   -
50   - /**
51   - * @param string url
52   - * @param string dadosPost
53   - */
54   - public function enviaRequisicaoPost($url, $dadosPost) {
55   - return $this->enviaRequisicao($url, $dadosPost, CURLOPT_POST);
56   - }
57   -
58   - private function enviaRequisicao($url, $dadosPost, $metodo) {
59   - $curl= curl_init();
60   - curl_setopt($curl, CURLOPT_URL, $url);
61   - curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
62   - curl_setopt($curl, $metodo, 1);
63   - curl_setopt($curl, CURLOPT_POSTFIELDS, $dadosPost);
64   - $resultado_http= curl_exec($curl);
65   - $http_code= curl_getinfo($curl, CURLINFO_HTTP_CODE);
66   - curl_close($curl);
67   -
68   - $this->validaCodigoHttp($http_code, $resultado_http);
69   -
70   - return $resultado_http;
71   - }
72   -
73   - function validaCodigoHttp($http_code, $resultado_http= '') {
74   - if (empty ($http_code)) {
75   - throw new EmktApiException("Erro na chamada do webservice, falta algum " .
76   - "parametro na url ou algum problema na rede.");
77   - }
78   - if ($http_code != '200') {
79   - throw new EmktApiException("Erro na chamada do webservice: " .
80   - "statusCode:$http_code, mensagem:$resultado_http");
81   - }
82   - }
  11 + /**
  12 + * @param string url
  13 + */
  14 + public function enviaRequisicaoGet($url) {
  15 + $curl= curl_init();
  16 + curl_setopt($curl, CURLOPT_URL, $url);
  17 + curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
  18 +
  19 + $resultado_http = curl_exec($curl);
  20 + $http_code= curl_getinfo($curl, CURLINFO_HTTP_CODE);
  21 + curl_close($curl);
  22 +
  23 + $this->validaCodigoHttp($http_code, $resultado_http);
  24 +
  25 + return $resultado_http;
  26 + }
  27 +
  28 + public function enviaRequisicaoPut($url, $dadosPut) {
  29 + $ch= curl_init();
  30 +
  31 + $putData = tmpfile();
  32 + fwrite($putData, $dadosPut);
  33 + fseek($putData, 0);
  34 +
  35 + curl_setopt($ch, CURLOPT_URL, $url);
  36 + curl_setopt($ch, CURLOPT_PUT, true);
  37 + curl_setopt($ch, CURLOPT_INFILE, $putData);
  38 + curl_setopt($ch, CURLOPT_INFILESIZE, strlen($dadosPut));
  39 + curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
  40 +
  41 + $resultado_http = curl_exec($ch);
  42 +
  43 + $http_code= curl_getinfo($ch, CURLINFO_HTTP_CODE);
  44 + fclose($putData);
  45 + curl_close($ch);
  46 +
  47 + $this->validaCodigoHttp($http_code, $resultado_http);
  48 +
  49 + return $resultado_http;
  50 + }
  51 +
  52 + /**
  53 + * @param string url
  54 + * @param string dadosPost
  55 + */
  56 + public function enviaRequisicaoPost($url, $dadosPost) {
  57 + return $this->enviaRequisicao($url, $dadosPost, CURLOPT_POST);
  58 + }
  59 +
  60 + private function enviaRequisicao($url, $dadosPost, $metodo) {
  61 + $curl= curl_init();
  62 + curl_setopt($curl, CURLOPT_URL, $url);
  63 + curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
  64 + curl_setopt($curl, $metodo, 1);
  65 + curl_setopt($curl, CURLOPT_POSTFIELDS, $dadosPost);
  66 + $resultado_http = curl_exec($curl);
  67 + $http_code= curl_getinfo($curl, CURLINFO_HTTP_CODE);
  68 + curl_close($curl);
  69 +
  70 + $this->validaCodigoHttp($http_code, $resultado_http);
  71 +
  72 + return $resultado_http;
  73 + }
  74 +
  75 + function validaCodigoHttp($http_code, $resultado_http='') {
  76 + if (empty ($http_code)) {
  77 + throw new EmktApiException("Erro na chamada do webservice, falta algum " .
  78 + "parametro na url ou algum problema na rede.");
  79 + }
  80 + if ($http_code != '200') {
  81 + throw new EmktApiException("Erro na chamada do webservice: " .
  82 + "statusCode:$http_code, mensagem:$resultado_http");
  83 + }
  84 + }
83 85 }
84 86 ?>

0 comments on commit 40c8c70

Please sign in to comment.
Something went wrong with that request. Please try again.