この問い合わせは、Curl を使用した Barnes & Noble のモバイル Web サイトへのログインに焦点を当てています。 SSL の使用により問題が発生し、
問題を解決するには、次の調整を検討してください:
次のコードは、これらの調整を作業例に組み込みます。
// Constants $EMAIL = '[email protected]'; $PASSWORD = 'yourpassword'; $COOKIE_FILE = "/tmp/cookies.txt"; $LOGIN_URL = "https://cart2.barnesandnoble.com/mobileacct/op.asp?stage=signIn"; $AGENT = "Nokia-Communicator-WWW-Browser/2.0 (Geos 3.0 Nokia-9000i)"; // Curl Initialization $ch = curl_init(); // Basic Headers $headers = ["Accept: */*", "Connection: Keep-Alive"]; // Curl Options curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_USERAGENT, $AGENT); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_COOKIEFILE, $COOKIE_FILE); curl_setopt($ch, CURLOPT_COOKIEJAR, $COOKIE_FILE); // Step 1: Initialize with Login URL curl_setopt($ch, CURLOPT_URL, $LOGIN_URL); curl_exec($ch); // Step 2: Extract Form Fields $content = curl_getinfo($ch); $fields = getFormFields($content); // Populate Form Fields $fields['emailAddress'] = $EMAIL; $fields['acctPassword'] = $PASSWORD; // Extract X Value $loginUrl = "https://cart2.barnesandnoble.com/mobileacct/op.asp?x={$x}"; // Construct POST Fields $postFields = http_build_query($fields); // Update Login URL and POST Options curl_setopt($ch, CURLOPT_URL, $loginUrl); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $postFields); // Perform Login and Retrieve Result $result = curl_exec($ch); print $result;
Curl の使用に関するさらなる支援については、以下の追加リソースを検討してください。リソース:
以上がCurl、Cookie、および SSL を使用して Barnes & Noble のモバイル Web サイトにログインするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。