2014-03-01 229 views
0

從接收到來自客戶端的請求參數的節點服務器發送POST請求的最佳方式是什麼?
我要求最佳做法的原因是,如果多個客戶端正在調用節點服務,它不應該影響響應時間。
這裏是骨幹示範它發送到節點的請求服務器:向節點服務器發送第三方服務的請求

var LoginModel = Backbone.Model.extend({ 
    url:'http://localhost:3000/login', 

    defaults: { 
     email:"", 
     password:"" 
    }, 
    parse: function(resp) { 
     return resp; 
    }, 
    login: function() { 
     console.log('Here in the model'+JSON.stringify(this)); 
     this.save(); 
    } 
}); 
var loginModel = new LoginModel(); 

節點服務器

var http = require('http'), 
    express = require('express'); 

var app = express(); 
    app.listen(3000); 
app.post('/login', [express.urlencoded(), express.json()], function(req, res) { 
    console.log('You are here'); console.log(JSON.stringify(req.body)); 
    //Send the post request to third party service. 
}); 

我應該使用類似requestifyapp.post()功能並撥打電話至第三派對服務?

回答

1

我個人喜歡superagent,但request非常受歡迎。 hyperquest也值得考慮,因爲它解決了一些問題,因爲只使用節點核心http模塊。

原因我要求最佳實踐,因爲如果多個客戶端正在調用節點服務,它不應該影響響應時間。

首先,讓它工作。在它工作之後,你可以考慮在你的棧中的某處放置一個緩存,在你的客戶端和你的API之間,或者你的服務器和第三方API之間。我認爲,如果你不知道你需要緩存的確切位置,那麼究竟是什麼原因,以及它究竟會如何使你的應用程序受益,你不需要緩存,或者至少,你不是準備儀器明智地瞭解您的緩存是否有幫助。

+0

謝謝@PeterLynos。只需確認一下,可以從'app.post()'調用另一個服務。 –

+0

當然,如果這對您的應用程序是有意義的,當然。 –