Jeffrey Cross
Jeffrey Cross

Server sisi Javascript / DOM - AJAX mesra carian?

John Resig memaparkan semalam tentang eksperimennya dengan mewujudkan persekitaran pelayar Javascript / DOM pseudo-penuh yang berjalan dari baris arahan:

Hujung minggu ini saya mengambil langkah besar dalam menaikkan ante untuk JavaScript sebagai Bahasa. Pada suatu ketika pada petang Jumaat lepas, saya mula berkod dan tidak berhenti sehingga kadang-kadang pertengahan hari Isnin. Hasilnya adalah penyemak imbas / DOM yang cukup persekitaran, ditulis dalam JavaScript, yang berjalan di atas Rhino; mampu menjalankan jQuery, Prototaip, dan MochiKit (sekurang-kurangnya).

Sentuhan yang sangat bagus ialah anda boleh mengeluarkan permintaan PUT dan DELETE pada objek XMLHttpRequest untuk memanipulasi fail pada sistem fail setempat! Inilah skrip contoh yang menghancurkan tajuk pos dari alistapart.com dan menyimpannya dalam fail (ingat, ini berjalan pada server seperti skrip shell):

beban ("env.js"); window.location = "http://alistapart.com/"; window.onload = function () {load ("dist / jquery.js"); var str = "Terbaru Senarai Senarai Semula: n"; $ ("h4.title"). setiap (fungsi () {str + = "-" + this.textContent + "n";}); var keluar = XMLHttpRequest baru (); out.open ("PUT", "fail: /tmp/alist.txt"); out.send (str); };

Cari AJAX mesra Apabila anda memuat shell HTML kosong kosong dan isi di sisi penyemak imbas dengan kandungan dari sumber XML, anda mempunyai laman yang pada dasarnya tidak dapat dilihat oleh enjin carian. Satu penyelesaian untuk ini, kekurangan semua permintaan halaman memuatkan HTML penuh, adalah untuk pra-menyebabkan kandungan pada halaman di sebelah pelayan. Sebarang kandungan menyegarkan atau manipulasi masih boleh dilakukan di pihak klien melalui AJAX.

Masalah dengan kaedah ini ialah anda mempunyai satu pangkalan kod yang menjadikan halaman anda di sisi pelayan, dan kemudian satu lagi kod pangkalan Javascript yang pada dasarnya melakukan fungsi yang sama pada sisi klien. Ini dua kali kerja. Dua kali juga memperbaiki pepijat.

Bayangkan memperluas bukti konsep Javascript server-side ini menjadi senibina umum untuk laman web gaya AJAX dinamik. Tidak ada alasan mengapa anda tidak dapat menggunakan perpustakaan Javascript untuk membuat halaman pra-menyebabkan mereka dihidangkan dan kemudian menggunakan kod yang sama untuk mengemas kini kandungan halaman pada sisi klien.

Ambil konsep Javascript mod dwi ini dan anda boleh memberikan semua tegasan anchor anda a href = "url.html" serta onclick = "loadFoo ('url.xml')". Pelayar bersesuaian Javascript boleh mendapat manfaat daripada ciri AJAX UI, sementara enjin carian masih boleh menavigasi dokumen anda dengan sewajarnya.

Ujian Automatik Ciri bagus lain yang disediakan oleh hack John ialah mekanisme untuk menguji dan menyahpepijat kod Javascript anda dengan mudah. Anda boleh mengetuk ujian unit anda dalam Javascript semasa menulis aplikasi web anda dan dengan mudah melaksanakannya terhadap perisian anda, sama seperti proses pembangunan tradisional akan mempunyai prosedur "membuat ujian" (atau setaraf).

Idea-idea lain Beberapa aplikasi lain segera datang ke fikiran, pencarian yang paling jelas. Satu persekitaran Javascript / DOM yang kuat yang ditambah kepada proses merangkak dapat membuat banyak kandungan yang sebelumnya tidak dapat diakses tiba-tiba lebih mudah bagi bot carian untuk dicerna.

Ada sebarang idea atau kegunaan segera untuk AJAX sisi pelayan? Beri kami seruan dalam komen!

Membawa Pelayar ke Pelayan - Pautan

Kongsi

Meninggalkan Komen