Login cURL chamar outra url
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';
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]
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';
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]
comentários (0)
suspender
Lista de Respostas:
Nenhuma resposta foi publicada ainda.