Foros del Web » Programando para Internet » PHP »

HTTPs Post comunicacion

Estas en el tema de HTTPs Post comunicacion en el foro de PHP en Foros del Web. Buenas. últimamente estoy tratando de enviar un HTTPS Post request hacia otro sitio por medio de la extencion Curl, le seteo para que utilize el ...
  #1 (permalink)  
Antiguo 14/05/2013, 13:43
Avatar de erick509  
Fecha de Ingreso: mayo-2013
Ubicación: san jose
Mensajes: 8
Antigüedad: 10 años, 11 meses
Puntos: 0
Exclamación HTTPs Post comunicacion

Buenas.

últimamente estoy tratando de enviar un HTTPS Post request hacia otro sitio por medio de la extencion Curl, le seteo para que utilize el metodo Post, pero el receptor dice que no debe ser como webform el post......


me agradaría alguna recomiendan en cuanto a configuración del curl, o una alternativa para enviar el request
  #2 (permalink)  
Antiguo 14/05/2013, 16:59
 
Fecha de Ingreso: abril-2011
Mensajes: 31
Antigüedad: 13 años
Puntos: 2
Respuesta: HTTPs Post comunicacion

Si estas usando una plataforma de linux basta con esto:
descarga e instala el paquete:

sudo apt-get install curl libcurl3 libcurl3-dev php5-curl

Una vez terminado reinicia el servidor web apache:

sudo /etc/init.d/apache2 restart

..............
ahora si es en windows dime que base de datos esta usando?....
  #3 (permalink)  
Antiguo 15/05/2013, 08:58
Avatar de erick509  
Fecha de Ingreso: mayo-2013
Ubicación: san jose
Mensajes: 8
Antigüedad: 10 años, 11 meses
Puntos: 0
Respuesta: HTTPs Post comunicacion

Gracias por su respuesta, pero creo que me explique mal...

utilizo php y mysql, ya tengo instalada la libreria Curl. El problema radica en el tipo de HTTPS Post request que debo enviar, cuando seteo el curl en POST y lo envio el servidor destino me lo recibe pero no lo procesa, debido a dice que no debe ser como un webform Post.

le agradeceria alguna ayuda.
  #4 (permalink)  
Antiguo 15/05/2013, 16:04
 
Fecha de Ingreso: abril-2011
Mensajes: 31
Antigüedad: 13 años
Puntos: 2
Respuesta: HTTPs Post comunicacion

mmm... si dices que te llega al servidor quiere decir que lo esta procesando...... ahora mi pregunta es que estas haciendo?, que le estas validando?.....

ponte las lineas de codigos que dices que no procesa?...

Saludos!!!
  #5 (permalink)  
Antiguo 17/05/2013, 08:55
Avatar de erick509  
Fecha de Ingreso: mayo-2013
Ubicación: san jose
Mensajes: 8
Antigüedad: 10 años, 11 meses
Puntos: 0
Respuesta: HTTPs Post comunicacion

Bueno aqui te copio el codigo, agrego headers personalizados al mensaje, parece que estan bien declarados ya que si se reciben, el problema radica en que no se debe enviar como webform y no se o no he podido encontrar si hay forma de cambiar el tipo de post que realiza el curl predeterminadamente

$paPostData2 = 'AuthorizationRequestParam=F1F1F0F0723C24C128E0820 0F1';

$paLenPostData= strlen($paPostData2);

$aHeaderData = array(
'POST /IPPayments/inter/CardAuthorization.do HTTP/1.1',
'User-Agent: NextPay',
'Content-Type: plain/text',
'Accept-Language: en-us',
'Cache-Control: no-cache',
'Connection: Keep-Alive',
'origin: Test',
'country: 840',
'region: EMEA',
'message: ISO GCAG',
'MerchNbr: 576757657',
'RtInd: 020',
'Content-Length: ' . $paLenPostData
);


//create cURL connection
$oCurl_connection = curl_init($this->sSiteTarget);

//set options
curl_setopt($oCurl_connection, CURLOPT_HEADER, true);
curl_setopt($oCurl_connection, CURLOPT_HTTPHEADER, $aHeaderData);
curl_setopt($oCurl_connection, CURLOPT_POST, true);
curl_setopt($oCurl_connection, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($oCurl_connection, CURLOPT_POST, 1);


curl_setopt($oCurl_connection, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($oCurl_connection, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)");
curl_setopt($oCurl_connection, CURLOPT_RETURNTRANSFER, true);
curl_setopt($oCurl_connection, CURLOPT_SSL_VERIFYPEER, 1);
curl_setopt($oCurl_connection, CURLOPT_PORT, 443);

curl_setopt($oCurl_connection, CURLOPT_POSTFIELDS, $paPostData);

//perform request
$oResult = curl_exec($oCurl_connection);
$info = curl_getinfo($oCurl_connection);


curl_close($oCurl_connection);

return $oResult;
  #6 (permalink)  
Antiguo 17/05/2013, 08:56
Avatar de erick509  
Fecha de Ingreso: mayo-2013
Ubicación: san jose
Mensajes: 8
Antigüedad: 10 años, 11 meses
Puntos: 0
Respuesta: HTTPs Post comunicacion

Disculpe $paPostData2 es $paPostData
  #7 (permalink)  
Antiguo 20/05/2013, 10:11
Avatar de erick509  
Fecha de Ingreso: mayo-2013
Ubicación: san jose
Mensajes: 8
Antigüedad: 10 años, 11 meses
Puntos: 0
Respuesta: HTTPs Post comunicacion

Bueno al parecer no se puede enviar datos curl por POST que no sean de tipo webform
  #8 (permalink)  
Antiguo 20/05/2013, 21:36
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: HTTPs Post comunicacion

Vas a tener que usar sockets directamente, usando fsockopen y escribiendo directamente el protocolo http.
  #9 (permalink)  
Antiguo 21/05/2013, 07:00
 
Fecha de Ingreso: abril-2011
Mensajes: 31
Antigüedad: 13 años
Puntos: 2
Respuesta: HTTPs Post comunicacion

saludos erick509!!!... estaba de viaje..... he llegado y revisado tu codigo y pues hay ciertas cosas que no entiendo, usas ciertas cosas que bueno tu mas que nadie sabras el por que las usas,... bueno en fin, fijate este ejemplo sencillo de un envio Post de la cual me guio:

Código PHP:
Ver original
  1. $url = "http://www.example.com/login";  
  2. $postData = array("user" => ontuts, "password" => "test");  
  3. /*Convierte el array en el formato adecuado para cURL*/  
  4. $elements = array();  
  5. foreach ($postData as $name=>$value) {  
  6.    $elements[] = "{$name}=".urlencode($value);  
  7. }  
  8. $handler = curl_init();  
  9. curl_setopt($handler, CURLOPT_URL, $url);  
  10. curl_setopt($handler, CURLOPT_POST,true);  
  11. curl_setopt($handler, CURLOPT_POSTFIELDS, $elements);  
  12. $response = curl_exec ($handler);  
  13. curl_close($handler);

manejalo de esta forma..haber....

Etiquetas: curl, https, post, request
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:25.