API NodeJS com Tedious - требование sql не является функцией - PullRequest
0 голосов
/ 31 марта 2020

Estou com problemma em criar api usando утомительный para conexão com banco de davos externo SQL, ocorre o erro abaixo no navegador, nao sei oque estou fazendo errado:

перевод: я возникают проблемы при создании API с использованием утомительного подключения к внешней базе данных SQL, в браузере возникает ошибка, приведенная ниже, я не знаю, что я делаю неправильно:

    at c:\nodejs\SQL\index.js:22:7
    at Layer.handle [as handle_request] (c:\nodejs\SQL\node_modules\express\lib\router\layer.js:95:5)
    at next (c:\nodejs\SQL\node_modules\express\lib\router\route.js:137:13)
    at Route.dispatch (c:\nodejs\SQL\node_modules\express\lib\router\route.js:112:3)
    at Layer.handle [as handle_request] (c:\nodejs\SQL\node_modules\express\lib\router\layer.js:95:5)
    at c:\nodejs\SQL\node_modules\express\lib\router\index.js:281:22
    at Function.process_params (c:\nodejs\SQL\node_modules\express\lib\router\index.js:335:12)
    at next (c:\nodejs\SQL\node_modules\express\lib\router\index.js:275:10)
    at expressInit (c:\nodejs\SQL\node_modules\express\lib\middleware\init.js:40:5)
    at Layer.handle [as handle_request] (c:\nodejs\SQL\node_modules\express\lib\router\layer.js:95:5)`

Codi go:

const sql = require('mssql');
var tediousExpress = require('express4-tedious');
const server = express();

// Usando TediousEspress4
var app = express();
app.use(function (req, res) {
    req.sql = tediousExpress(req, 
  {
    "server"  : "###.###.###.###",
    "userName": "username",
    "password": "password",
    "options": {"encrypt": true, "database": "dbTESTE"}
})});

// localhost:3000/user


server.get('/user', function (req, res) {

  req.sql("select NomeUsuario from tbUsuarios for json path")
      .into(res);

});

server.listen(3000);

Agradeço a Ajuda!

Перевод: Спасибо за помощь!

1 Ответ

0 голосов
/ 01 апреля 2020

ru: Из-за использования server, app и router вы, похоже, создали свой код из нескольких разных примеров. Он должен быть реструктурирован для использования express и express4-tedious, как показано ниже. Обратите внимание, что tediousExpress принимает только один параметр, который является элементом configuration.

es: Debido al uso de server, app y router, parece que ha creado su códi go участник VAR ios ejemplos diferentes. Debe ser reestructurado para usar express y express4-tedious como se указывает на непрерывность. Tenga en cuenta que tediousExpress acepta solo un parámetro ahora, que es el elemento configuration.

// npm install --save express express4-tedious
var express = require('express');
var tediousExpress = require('express4-tedious');

// Usando TediousEspress4
var app = express();
app.use(function (req, res, next) {
    req.sql = tediousExpress(
        {
            "server": "###.###.###.###",
            "authentication": {
                "type": "default",
                "options": {
                    "userName": "username",
                    "password": "password",
                }
            },
            "options": { "encrypt": true, "database": "dbTESTE" }
        });
    next();
});

// localhost:3000/user
app.get('/user', function (req, res) {
    req.sql("select NomeUsuario from tbUsuarios for json path")
        .into(res);
});

app.listen(3000);

ru: Надеюсь, это поможет!

es: ¡Espero que esto ayude!

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