簡體   English   中英

如何在node.js中使用AJAX

[英]How to use AJAX with node.js

我是服務器端編程的新手,但是我正在構建一個框架,以便學習並在最終結果發布后將其發布給公眾。

我希望Web平台的某些部分能夠根據請求僅更新頁面的一部分,但是我對AJAX還是一無所知。

如果有人可以提出我所追求的學習曲線,那就太好了。 像Kinda SoundCloud這樣的網站,能夠僅更新DOM中要求的那些部分。

注意:我也很新,所以建議加些鹽。 我詳細介紹了一種對我有用的技術,但我不能保證這是最好的方法!

AJAX在客戶端,可以通過標准javascript(在大多數情況下我不推薦這樣做)或通過jQuery之類的庫來實現。 關於使用jQuery進行ajax調用的教程有很多,但是要點是,您正在請求服務器上的一些資源,當服務器到達時,該資源會調用對數據執行某些操作的回調(此行為是異步的,就像節點一樣.js往往是)。

如果您沒有為客戶端使用AJAX的經驗,建議您先使用Express之類的框架,然后再滾動使用自己的框架(這也會重新發明輪子)。 AJAX調用與標准HTTP請求沒有什么不同:它可以是POST,GET等。

然后,您進入了路由的概念:給定一些信息(無論是否AJAX!)的請求,我該怎么辦,我應該返回什么? 框架為您完成了幕后工作,因此您所需要做的就是指定要請求的資源,請求資源的方法以及執行服務器端處理並返回一些內容的回調。數據。 此數據可以是網頁,也可以是JSON對象,依此類推。 關鍵是要以一種對AJAX調用有意義的方式來構造它。

這是一個簡單的示例:說我有一個網頁,它將顯示與服務器相關的一堆信息,例如正常運行時間,負載,內存使用情況等。 首先,我編寫了基本HTML頁面(例如index.html ),該頁面構成了這些數據,然后開始編寫一個腳本,對該信息進行AJAX調用。 我決定該請求(例如/json/stats )將收到JSON響應。 在服務器端,我整理了一個簡單的Express腳本,該腳本啟動服務器並有兩條路由:第一條路由將接受對/頁面的任何請求並提供index.html 第二條路由將接受對/json/stats任何請求,並進行一些調用以找出服務器的狀態,構造一個保存此數據的對象,並將其作為響應返回。 現在,回到我的HTML頁面的腳本中,我可以通過jQuery對這個對象的結構進行操作以構建頁面。

如果您想查看一些代碼,可以在此處查看 我建議研究一下REST體系結構 (此代碼遵循該體系結構 ),以便對該主題有更多的概念性理解。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM