2016-08-20 11 views
0

Я хочу использовать модуль request в своем экспресс-приложении, но я не уверен, где находятся запросов.Где вы размещаете код запроса NPM?

Использование:

  • Когда пользователь загружает страницу, сделать запрос GET и заполнить страницу с data.
  • Когда пользователи нажимают на элемент из таблицы, сделайте запрос GET.
  • Когда пользователь заполняет форму, POST.

Я попытался найти ответы, но, похоже, подразумевается, что разработчик знает, где разместить код.

Пример из фрагмента кода с помощью запроса, что я не уверен, куда поместить в экспресс-приложение:

var request = require('request'); 
request('http://www.google.com', function (error, response, body) { 
    if (!error && response.statusCode == 200) { 
    console.log(body) // Show the HTML for the Google homepage. 
    } 
}) 

Я предполагаю, что я не должен разместить код в файле server.js особенно если Я собираюсь делать много разных звонков, но это то, что похоже на то, что другие делают на StackOverflow.

Имеет ли запрос принадлежность модели?

+0

Вы делаете это в ответ на http-запрос от пользователя? Если это так, он может попасть в обработчик запросов. –

+0

Когда пользователь загружает страницу, я хочу сделать запрос GET. Когда пользователи нажимают на элемент из таблицы, я хочу сделать запрос GET. – BrianCurliss

ответ

0

Если вы делаете это в ответ на взаимодействие с пользователем, например, нажимаете на что-то, вы можете просто сделать это с помощью обработчика маршрута. Ниже я просто возвращаю результаты клиенту или передаю ошибку следующему обработчику в цепочке.

var request = require('request'); 
var express = require('express'); 
var app = express(); 

app.get('/click', function(req, res, next){ 
    request('http://www.google.com', function (error, response, body) { 
     if (error || response.statusCode != 200) 
     return next(err); 
     response.send(body) // return the html to the client 
    }) 
}); 

app.listen(3000); 

В больших приложениях вы можете перемещать маршруты в отдельные модули.