ホームページ  >  記事  >  バックエンド開発  >  Barnesandnoble.com への Curl ログインが SSL と Cookie で失敗するのはなぜですか?

Barnesandnoble.com への Curl ログインが SSL と Cookie で失敗するのはなぜですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-15 12:35:02200ブラウズ

Why is my Curl login to Barnesandnoble.com failing with SSL and cookies?

SSL と Cookie を使用した Curl を使用した Barnesandnoble.com へのログインのトラブルシューティング

はじめに

Barnesandnoble.com のモバイル サイトへのログインで問題が発生しましたCurl と SSL および Cookie を使用します。 eBay 用の動作するコードがあるにもかかわらず、特に HTTPS を使用する Barnesandnoble.com でログインが失敗します。

分析と解決策

元のコードには 2 つの潜在的な問題がありました:

  1. URLEncode パラメータ: パラメータが正しく処理されるように、POST 文字列内の電子メールとパスワードを URL エンコードする必要があります。
  2. x 値: ログイン URL には、 x パラメータは、最初の HTML 応答から抽出されました。

以下の修正されたコードは、次の問題に対処します。

// ... Your previous code ...

// URLEncode POST parameters
$fields['emailAddress'] = urlencode($EMAIL);
$fields['acctPassword'] = urlencode($PASSWORD);

// Get x value from initial page
$x = '';
if (preg_match('/op\.asp\?x=(\d+)/i', $content, $match)) {
    $x = $match[1];
}

// Set login URL with x parameter
$LOGINURL = "https://cart2.barnesandnoble.com/mobileacct/op.asp?x=$x";

// ... Your previous code ...

この更新されたコードは、Barnesandnoble.com に正常にログインします。 Cookie を取得したら、同じ COOKIEFILE および COOKIEJAR オプションを使用して後続の Curl オブジェクトを作成し、追加の認証なしでログイン状態を維持できます。

以上がBarnesandnoble.com への Curl ログインが SSL と Cookie で失敗するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。