2016-11-19 61 views
2

是節點js有任何功能就像$ .ajax?我認爲Node js完全是JavaScript編寫的,$ .ajax jquery也完全是由javascript編寫的。然後,也許節點js有任何功能就像$ .ajax。這是錯的嗎?

+0

https://github.com/request/request – undefined

+0

ajax用於前端查詢後端。由於nodejs在後臺運行,爲什麼你需要ajax? – Mox

+0

@Mox他/她可能想要將一個典型的http請求發送到另一臺服務器或內部應用程序級別的路由。 – undefined

回答

4

從技術上講,AJAX是瀏覽器中基於特定API的唯一瀏覽器。所以,我會假設你真正要問的是一個簡單的方法來從node.js中創建其他HTTP服務器的HTTP請求。

要發出這樣的請求,您可以使用內置的http.get()(在http模塊中),也可以使用更高級別的附加模塊request()。請求模塊構建在http模塊之上,但提供了更多功能,而且對於許多情況而言,使用起來更加容易。

其中的請求模塊在功能列表中,你會發現:流支持,形式的編碼/解碼,HTTP認證,定製標題,OAuth的,簽約,重定向的queryString,gzip的等..

這裏有一個例子:

const request = require('request'); 

request({method: 'GET', uri: 'http://www.google.com'}, function(err, response, body) { 
    // handle response here 
}); 

由於承諾現在用於處理在Javascript異步操作更現代的工具,這裏是用承諾的例子:

const rp = require('request-promise'); 

rp({method: 'GET', uri: 'http://www.google.com'}).then(body => { 
    // handle response here 
}).catch(err => { 
    // error here 
});