0

Login cURL chamar outra url

criado por Paulo em 12/09/2016 12:49pm
Boa tarde pessoal, preciso de uma ajuda!

Estou efetuando o login com sucesso, mas preciso chamar uma segunda url e retornar os dados dela,
Mas a resposta que retorna é que O usuário precisa estar autenticado, sendo que acabei de fazer isso!

Abaixo está meu código de login, e tbm no mesmo código está a segunda url, se alguem quiser rodar para testar, fiquem a vontade, é só criar um arquivo php e rodar

Irá retornar a resposta das duas telas ao mesmo tempo:

A primeira: "Sucesso ao se logar"
A segunda : "Apenas usuários autenticados acessam essa funcionalidade."

[code]
<?php

$usuario = '03390742999';
$senha = 'Agf@2015';

$url = 'https://apps.correios.com.br/cas/login';

$ch = curl_init();
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);
curl_setopt($ch,CURLOPT_FOLLOWLOCATION,true);
curl_setopt ($ch, CURLOPT_COOKIEJAR, 'cookie.txt');

$html_form = curl_exec($ch);

if ($html_form) {
$documento = new DOMDocument;
$documento->loadHTML($html_form);
$inputs = $documento->getElementsByTagName('input');

foreach ($inputs as $input){
$post[$input->getAttribute('name')] = $input->getAttribute('value');
}
$post['username'] = $usuario;
$post['password'] = $senha;

curl_setopt($ch,CURLOPT_POST,true);
curl_setopt($ch,CURLOPT_POSTFIELDS,http_build_query($post));
$retorno = curl_exec($ch);
echo $retorno;

}
//curl_close($ch);

$etiqueta = 'DW420776655BR';
$url = 'http://svp.correios.com.br/app/conferencia/objetos/carrega_plp.php&#039;;

curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);
curl_setopt($ch,CURLOPT_FOLLOWLOCATION,true);
curl_setopt($ch,CURLOPT_HEADER,true);

$html_form = curl_exec($ch);

if ($html_form) {
$documento = new DOMDocument;
$documento->loadHTML($html_form);
$inputs = $documento->getElementsByTagName('input');

foreach ($inputs as $input){
$post[$input->getAttribute('name')] = $input->getAttribute('value');
}
$post['etiqueta'] = $etiqueta;

curl_setopt($ch,CURLOPT_POST,true);
curl_setopt($ch,CURLOPT_POSTFIELDS,http_build_query($post));
$retorno2 = curl_exec($ch);

//echo "<pre>";
echo $retorno2;

echo '<pre>';
print_r (curl_getinfo($ch));

}else{
echo curl_error($ch);
}
curl_close($ch);

[/code]







Lista de Respostas:

Nenhuma resposta foi publicada ainda.

Nova Resposta:

(Você pode usar tags como <b>, <i> ou <code>. URLs serão convertidas para links automaticamente.)