Rumah  >  Soal Jawab  >  teks badan

javascript - Isu teknikal mengenai imbasan WeChat

Sekarang saya tahu melalui pemahaman bahawa kod QR WeChat mengandungi uid ini dengan mengimbas kod QR pada klien. Halaman web sentiasa meminta sama ada Uid itu dibenarkan, dan hanya akan log masuk tidak memahami sesuatu Ya, bagaimanakah pelanggan boleh memberitahu halaman web bahawa permintaan untuk kebenaran dan log masuk telah diperolehi. Bagaimanakah halaman web mendapat kebenaran ini selepas menghantarnya ke pelayan Ia mesti sangat mudah jika ia diperoleh melalui pangkalan data, tetapi saya fikir ia pasti tidak diperoleh melalui pangkalan data? Saya ingin bertanya sama ada terdapat teknologi lain dalam ini yang boleh membenarkan halaman web mendapatkan arahan yang dihantar oleh pelanggan! ! Tolong beri saya nasihat

PHPzPHPz2712 hari yang lalu792

membalas semua(1)saya akan balas

  • phpcn_u1582

    phpcn_u15822017-05-17 10:07:28

    Selain mengembalikan uid unik, apabila halaman ini sebenarnya dibuka, pelayar dan pelayan juga membuat sambungan yang panjang untuk meminta rekod imbasan uid. Jika tidak, anda akan menerima kod status 408 (permintaan tamat masa) selepas tempoh masa tertentu (pada masa ini kira-kira 27 saat), menunjukkan bahawa anda perlu meneruskan permintaan seterusnya jika anda menerima kod status 201 (pelayan berjaya mencipta sumber baharu ), ini bermakna pelanggan mengimbas kod QR.

    Permintaan tamat masa: pulangkan 408

    Berjaya mengimbas kod: kembalikan 201

    Kod pertanyaan

     function _poll(_asUUID) {
         $.ajax({
           type: "GET",
           url: "https://login." + _sBaseHost + "/cgi-bin/mmwebwx-bin/login?uuid=" + _asUUID + "&tip=" + show_tip,
           dataType: "script",
           cache: false,
           timeout: _nAjaxTimeout,
           success: function(data, textStatus, jqXHR) {
             switch (_aoWin.code) {
               case 200:
                 // ....
                 break;
               case 201:
                 // ....
                 break;
               case 408:
                 // ....
                 break;
               case 400:
               case 500:
                 // ....
                 break;
             }
           },
           error: function(jqXHR, textStatus, errorThrown) {
             // ....
           }
         });
     }

    Apabila pengguna mengimbas kod QR menggunakan WeChat selepas log masuk, uid akan terikat pada token yang dijana oleh WeChat pada telefon bimbit dan dimuat naik ke pelayan. Pada masa ini, penyemak imbas menanyakan rekod pengimbasan uid melalui tinjauan panjang, serta-merta mendapat kod respons 201, dan kemudian memberitahu pelayan juga memasuki halaman baharu (yang memerlukan anda mengklik butang pengesahan). Selepas pelanggan mengklik untuk mengesahkan, ia memperoleh token kredit pelayan dan meneruskan proses pertukaran maklumat seterusnya.

    balas
    0
  • Batalbalas