Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana Pengundian Lama Berfungsi dalam Aplikasi Web?
Tinjauan panjang ialah teknik tinjauan pendapat yang digunakan dalam aplikasi web untuk membolehkan pelayan menghantar data kepada pelanggan tanpa menunggu permintaan yang jelas. Melaksanakan tinjauan panjang melibatkan mewujudkan sambungan berterusan antara pelanggan dan pelayan.
Untuk menyampaikan permintaan untuk tinjauan panjang, konfigurasikan Apache untuk mengendalikan permintaan dengan tamat masa yang lama. Ini boleh dicapai dengan menetapkan arahan KeepAliveTimeout dan MaxKeepAliveRequests dalam konfigurasi Apache.
Skrip PHP mudah yang melaksanakan tinjauan panjang boleh ditulis seperti berikut:
<?php while (true) { // Sleep for a random duration to simulate data availability sleep(rand(2, 10)); // Generate a random string to represent new data $data = "Message: " . rand(1, 10); // Send the data to the client echo $data; flush(); } ?>
Pada sisi klien, anda boleh menggunakan JavaScript untuk mewujudkan sambungan berterusan ke skrip PHP dan mengendalikan data masuk. Ini boleh dicapai menggunakan kod jQuery berikut:
$(function() { function waitForMsg() { $.ajax({ url: "msgsrv.php", async: true, timeout: 50000, success: function(data) { // Append the received data to a DOM element $("#messages").append("<div>" + data + "</div>"); // Recursively call the waitForMsg function to continue polling waitForMsg(); }, error: function(XMLHttpRequest, textStatus, errorThrown) { // Handle the error and try again after a delay waitForMsg(); } }); } waitForMsg(); });
Contoh ini menyediakan pelaksanaan asas pengundian panjang untuk tujuan demonstrasi. Untuk pelaksanaan yang mantap dan berskala, pertimbangkan untuk menggunakan rangka kerja seperti Node.js atau Spring Boot.
Atas ialah kandungan terperinci Bagaimana Pengundian Lama Berfungsi dalam Aplikasi Web?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!