私はcURLを使用して正常に接続しましたが、ファイルをダウンロードしようとしていますが動作しません。ダウンロードしたファイルを開くと、許可された必要なメッセージが含まれているため、クッキーがわかります。最初の認証は動作しています。任意の考えphp cURL cookie saving empty
// Create a curl handle to a non-existing location
$ch = curl_init('https://xxxx/');
// curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
// ENABLE HTTP POST
curl_setopt ($ch, CURLOPT_POST, 1);
// SET POST PARAMETERS : FORM VALUES FOR EACH FIELD
curl_setopt ($ch, CURLOPT_POSTFIELDS, 'user=xxx&password=xxx');
// IMITATE CLASSIC BROWSER'S BEHAVIOUR : HANDLE COOKIES
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt');
curl_setopt ($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
$fp = fopen("status.xml", "w");
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);
if(curl_exec($ch) === false)
{
echo 'Curl error: ' . curl_error($ch);
}
else
{
echo 'Operation completed without any errors';
}
curl_close($ch);
fclose($fp);
実際に私はそれが動作するようになったが、奇妙な何かが起こっています。ダウンロードしたファイルにはログインページが含まれており、ダウンロードしたいxmlファイルは含まれていません。私は間違って何をしています。ありがとう – user1019144
場合によっては動作しない場合もあります。つまり、データを取得しようとしているサーバーに関連していることを意味します。私は何も言いません。それを分析し、あなたが逃したものを見てください – safarov
'CURLOPT_COOKIEFILE'行を削除してしまうクッキーを使用しないと、 – safarov