Как написать POST REST API с Node.js, Express и SQL DB? - PullRequest
0 голосов
/ 17 июня 2020

Я работаю над запросом REST API Post для вставки новых данных в базу данных SQL, но он не работает. Вот мой код:

var express = require('express'); // Web Framework
var app = express();
var sql = require('mssql'); // MS Sql Server client
const { request } = require('http');

// Connection string parameters.
var sqlConfig = {
    user: 'username',
    password: 'password',
    server: 'serveraddress',
    database: 'databasename'
}

// Start server and listen on http://localhost:8081/
var server = app.listen(8081, function () {
    var host = server.address().address
    var port = server.address().port

    console.log("app listening at http://%s:%s", host, port)
});

  //POST API
 app.post("/tag/insert/:tagId/", function(req , res){
    sql.connect(sqlConfig, function() {
        var request = new sql.Request();
        var stringRequest = "INSERT INTO Tag (tagId, tagStatus) VALUES ("+ req.params.tagId+ ", 1)";
        request.query(stringRequest, function(err, recordset) {
            if(err) console.log(err);
            res.end(JSON.stringify(recordset)); // Result in JSON format
        });
    });
})

Если я пытаюсь вставить новый тег через браузер, например «http://localhost: 8081 / tag / insert / 23232 », он всегда говорит: «НЕ МОГУТ ПОЛУЧИТЬ» / tag / insert / 23232 ". Что это значит? Как решить?

1 Ответ

1 голос
/ 17 июня 2020

Это означает, что вы используете запрос GET при создании конечной точки POST. Я не уверен, что это сработает, но вы можете попробовать изменить app.post на app.get, чтобы у вас действительно была конечная точка GET.

Я предлагаю вам ознакомиться с методами HTTP-запроса.

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