Vou complementar a resposta dele. Seu código está errado.
Para exportar uma função diretamente a gente exporta de outro jeito
// sua função não tem nome
module.exports = function(app){
app.get('/login', function(req, res){
var sql = require('mssql');
var connection = sql.connect({
user: "MeuUsuario",
password: "senhaUsuario",
database: "cliente",
server: "svr11.ravehost.com.br"
});
connection.query('select * from dbo.usuarioGet', function(err, results){
res.send(results);
});
});
};
Não pode ser exportada uma função anônima, por que o NodeJS não tem como referenciar ela lá fora. O mais correto é fazer assim
module.exports = {
Login: function(app){
app.get('/login', function(req, res){
var sql = require('mssql');
var connection = sql.connect({
user: "MeuUsuario",
password: "senhaUsuario",
database: "cliente",
server: "svr11.ravehost.com.br"
});
connection.query('select * from dbo.usuarioGet', function(err, results){
res.send(results);
});
});
};
Perceba que agora eu estou colocando um nome nela dentro de um objeto.
Para exportar ela de uma maneira mais compreensível, você~e pode fazer assim:
exports.login = function(app){
app.get('/login', function(req, res){
var sql = require('mssql');
var connection = sql.connect({
user: "MeuUsuario",
password: "senhaUsuario",
database: "cliente",
server: "svr11.ravehost.com.br"
});
connection.query('select * from dbo.usuarioGet', function(err, results){
res.send(results);
});
});
};
Aqui, eu estou exportando a variável diretamente com uma função anônima dentro dela
Por isso seu código não funcionava. Para mais informações sobre isso, tem um guia super bacana aqui:
https://www.sitepoint.com/understanding-module-exports-exports-node-js/