Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengapakah log masuk Curl saya ke Barnesandnoble.com gagal dengan SSL dan kuki?

Mengapakah log masuk Curl saya ke Barnesandnoble.com gagal dengan SSL dan kuki?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-15 12:35:02200semak imbas

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

Menyelesaikan Masalah Log masuk di Barnesandnoble.com menggunakan Curl dengan SSL dan Kuki

Pengenalan

Anda menghadapi masalah log masuk ke tapak mudah alih Barnesandnoble.com menggunakan Curl dengan SSL dan kuki. Walaupun mempunyai kod yang berfungsi untuk eBay, log masuk gagal secara khusus pada Barnesandnoble.com, yang menggunakan HTTPS.

Analisis dan Penyelesaian

Kod asal mempunyai dua masalah yang berpotensi:

  1. Parameter Kod URL: E-mel dan kata laluan dalam rentetan POST hendaklah dikodkan URL untuk memastikan pengendalian parameter yang betul.
  2. Nilai x: URL log masuk mungkin memerlukan x, yang diekstrak daripada respons HTML awal.

Kod yang disemak di bawah menangani isu ini:

// ... 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 ...

Kod yang dikemas kini ini berjaya log masuk ke Barnesandnoble.com. Setelah anda memperoleh kuki, anda boleh mencipta objek Curl seterusnya menggunakan pilihan COOKIEFILE dan COOKIEJAR yang sama untuk mengekalkan keadaan log masuk tanpa pengesahan tambahan.

Atas ialah kandungan terperinci Mengapakah log masuk Curl saya ke Barnesandnoble.com gagal dengan SSL dan kuki?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn