我想连接并从具有安全cookie的网站获取数据。我需要在解决验证码的下一个请求上设置cookie,但我在我的项目或小提琴手中看不到cookie。
set-cookie响应头中仅显示same-site、secure、httponly
我怎样才能像浏览器一样模拟这个过程?
浏览器到底做了什么,它在cookie中看到了什么?
我知道在cURL上设置X509 CA,并尝试了一下,但我在所有测试中都得到了一个错误:Peer的证书颁发者无法识别。
我使用CURLOPT_CAINFO在我的请求中设置CA,我尝试使用不同格式的CA,如cer,crt,pem,我用openssl更改它
<؟php
$headers = array(
'Host: example.com',
'Connection: keep-alive',
'Upgrade-Insecure-Requests: 1',
'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36',
'Accept-Language: en-US,en;q=0.9',
);
$url='https://example.com/';
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 30,
CURLOPT_FRESH_CONNECT => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => $headers,
CURLOPT_CONNECTTIMEOUT => 10,
CURLOPT_SSL_VERIFYPEER => true,
CURLOPT_SSL_VERIFYHOST => 2,
CURLOPT_CAINFO => 'Cert/certificate.crt',
CURLOPT_VERBOSE => 1,
CURLOPT_HEADER => 1,
));
$response = curl_exec($curl);
$err = curl_error($curl);
?>
https://stackoverflow.com/questions/56557166
复制相似问题