Permintaan merentas domain PHP dan teknologi Ajax membawa pengalaman interaktif yang lebih kaya kepada tapak web
Dengan perkembangan pesat Internet, tapak web berfungsi sebagai platform penting untuk penghantaran maklumat dan komunikasi menjadi tumpuan kebimbangan. Semasa proses pembangunan laman web, permintaan silang domain PHP dan teknologi Ajax telah menjadi cara penting untuk mencapai matlamat ini. Artikel ini akan memperkenalkan permintaan merentas domain PHP dan teknologi Ajax, dan memberikan contoh kod.
1. Apakah permintaan silang domain merujuk kepada permintaan HTTP yang dimulakan dari satu sumber (domain) ke sumber lain (domain) dalam penyemak imbas. Contohnya, dalam halaman sumber A, menghantar permintaan kepada pelayan sumber B melalui kod JavaScript ialah permintaan merentas domain. Memandangkan permintaan merentas domain melibatkan dasar keselamatan merentas domain, penyemak imbas secara automatik menyekat permintaan merentas domain secara lalai.
Untuk menyelesaikan masalah permintaan merentas domain, ia boleh dicapai dengan menetapkannya di bahagian pelayan.
// 源A的页面 <script> function callback(data) { // 处理返回的数据 } var script = document.createElement('script'); script.src = 'http://b.com/data.php?callback=callback'; document.head.appendChild(script); </script> // 源B的服务器 <?php $data = array('name' => 'John', 'age' => 30); echo $_GET['callback'] . '(' . json_encode($data) . ')'; ?>
// 在源B的服务器设置响应头 header('Access-Control-Allow-Origin: *');
Ajax (Asynchronous JavaScript dan XML) ialah teknologi yang mengemas kini kandungan web dengan memuatkan data secara tidak segerak di latar belakang. Melalui teknologi Ajax, tapak web boleh mengemas kini data tanpa menyegarkan halaman, meningkatkan pengalaman pengguna.
// 源A的页面 <script> var xhr = new XMLHttpRequest(); xhr.onreadystatechange = function() { if (xhr.readyState === 4 && xhr.status === 200) { // 处理返回的数据 var data = JSON.parse(xhr.responseText); console.log(data); } }; xhr.open('GET', 'http://b.com/data.php', true); xhr.send(); </script> // 源B的服务器 <?php $data = array('name' => 'John', 'age' => 30); echo json_encode($data); ?>
Atas ialah kandungan terperinci Permintaan merentas domain PHP dan teknologi Ajax membawa pengalaman interaktif yang lebih kaya ke tapak web. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!