Emulating a Browser's GET Request with PHP CURL
Emulating a browser's GET request can be crucial when interacting with websites that rely on specific headers or cookies. To achieve this with PHP's CURL, you may encounter challenges.
Emulating User Agent
Initially, you attempted to set the user agent using ini_set, but it's more effective to use CURLOPT_USERAGENT. This option allows you to specify the browser type and version.
Handling Cookies
Certain websites may check for cookies. To handle this, use CURLOPT_COOKIE, CURLOPT_COOKIEFILE, and/or CURLOPT_COOKIEJAR. These options enable you to pass cookies from a file or store cookies for future requests.
Verifying Certificates for HTTPS
As the request uses HTTPS, you may face issues with certificate verification. Use CURLOPT_SSL_VERIFYPEER to disable certificate checking.
Updated Code
Here's an updated version of your code:
<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>
The above is the detailed content of How to Emulate a Browser\'s GET Request with PHP CURL?. For more information, please follow other related articles on the PHP Chinese website!