我有一個明確的應用程序,從外部API獲取數據創建expressjs模型
api.com/companies (GET, POST)
api.com/companies/id (GET, PUT)
我想創建一個模型,以使代碼更易於維護,你可以看到I'm重複了很多的代碼在這裏。
router.get('/companies', function(req, res, next) {
http.get({
host: 'http://api.com',
path: '/companies'
}, function(response) {
var body = '';
response.on('data', function(d) {
body += d;
});
});
res.render('companies', {data: body});
});
router.get('/companies/:id', function(req, res, next) {
http.get({
host: 'http://api.com',
path: '/companies/' + req.params.id
}, function(response) {
var body = '';
response.on('data', function(d) {
body += d;
});
});
res.render('company', {data: body});
});
我該怎麼做?
好點。我仍然習慣了這個異步的東西 我將無法創建一個模型,因此我可以在多個頁面中調用/ companies?我在問,因爲異步需要完成請求 - 響應才能獲取數據。每次我需要顯示所有公司時,我需要發出http請求並在回調中發送數據? – handsome
那麼,如果公司沒有改變,你可以將它們存儲在某個地方的存儲器中,並首次提出請求,然後保存公司,然後每次只需返回保存的值。你想讓我編輯我的問題並向你展示一個例子嗎? – nem035
這是有道理的,但我正在尋找更多面向模型的東西,比如好的舊PHP,所以我可以重複使用邏輯,而不是在所有地方都進行http調用。謝啦! – handsome