使用 PHP 模拟浏览器的 GET 请求
尝试使用 curl 模拟来自浏览器的 GET 请求时,您可能会遇到以下错误服务器。以下是如何准确模拟浏览器的 GET 请求:
CURLOPT_USERAGENT:
ini_set 函数可能不会为curl 模块设置用户代理。相反,请使用curl_setopt函数中的CURLOPT_USERAGENT选项来指定请求的用户代理。
Cookie:
Web浏览器通常处理服务器可以使用的cookie用于身份验证和跟踪。要处理 cookie,请考虑使用 CURLOPT_COOKIE、CURLOPT_COOKIEFILE 和 CURLOPT_COOKIEJAR 选项。
SSL 证书验证:
由于请求使用 HTTPS,请验证 SSL 证书是否正在验证。如有必要,请将 CURLOPT_SSL_VERIFYPEER 设置为 false 以禁用 SSL 证书验证。
示例代码:
<code class="php">$url = "https://new.aol.com/productsweb/subflows/ScreenNameFlow/AjaxSNAction.do?s=username&f=firstname&l=lastname"; $agent = 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.0.3705; .NET CLR 1.1.4322)'; $ch = curl_init(); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_VERBOSE, true); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_USERAGENT, $agent); curl_setopt($ch, CURLOPT_URL, $url); $result = curl_exec($ch); var_dump($result);</code>
以上是如何使用 PHP 模拟浏览器的 GET 请求?的详细内容。更多信息请关注PHP中文网其他相关文章!