当前位置: 首页 > 知识库问答 >
问题:

无法使用express将数据从邮递员发布到数据库

文德曜
2023-03-14

我无法将数据从postman发布到我正在使用的mysql数据库express

我尝试过使用Body和Raw x-www-form-urlencoded

这是我的代码(是的,所有内容都在同一个文件中,我知道这不是一件好事,我很抱歉)

var app = express();
var bodyParser = require('body-parser');
var mysql = require('mysql');

app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));


// default route
app.get('/', function (req, res) {
    return res.send({ error: true, message: 'hello' })
});
// connection configurations
var dbConn = mysql.createConnection({
    host: 'localhost',
    user: 'root',
    password: '',
    database: 'testexpress'
});

// connect to database
dbConn.connect(); 



// Add a new user  
app.post('/user', function (req, res) {

    let user = req.body.user;

    if (!user) {
        return res.status(400).send({ error:true, message: 'Please provide user' });
    }

    dbConn.query("INSERT INTO users SET ? ", { user: user }, function (error, results, fields) {
        if (error) throw error;
        return res.send({ error: false, data: results, message: 'New user has been created successfully.' });
    });
});

// set port
app.listen(3000, function () {
    console.log('Node app is running on port 3000');
});

module.exports = app;

这是我在邮递员和数据库中的截图错误

共有1个答案

申嘉慕
2023-03-14

像这样修改你的代码。它应该可以工作

// Add a new user  
app.post('/user', function (req, res) {

    let user = [req.body]
    console.log(user);

    if (!user) {
        return res.status(400).send({ error:true, message: 'Please provide user' });
    }

    dbConn.query("INSERT INTO users SET ? ", user, function (error, results, fields) {
        if (error) throw error;
        return res.send({ error: false, data: results, message: 'New user has been created successfully.' });
    });
});

您的代码显示此错误消息error:true,消息:'请提供用户,因为每次在代码中执行(!user)时,都会出现条件,因为let user=req。身体用户将给出未定义的值,因此您将得到该错误,而其余代码将永远不会执行。

 类似资料:
  • 当我尝试使用以下命令将数据发布到我的REST API(使用Spring DATA JPA REST创建)时: 我得到这个错误:

  • 我正在将Firebase用于我的Android平台聊天应用程序。我正在将此库用于Firebase数据库: 我按照这里的所有步骤来设置我的项目。我为Firebase数据库的< code>read和< code>write权限设置了< code>true。 我使用下面的代码将我的数据发送到Firebase数据库(单击按钮后,下面的代码块触发): 我的日志返回以下信息: 然后我检查了我的Firebase

  • 本文向大家介绍使用Information Composer将数据发布到SAP HANA数据库,包括了使用Information Composer将数据发布到SAP HANA数据库的使用技巧和注意事项,需要的朋友参考一下 数据发布到HANA数据库后,您将无法重命名该表。在这种情况下,您必须从HANA数据库的Schema中删除该表。

  • 问题内容: 是否可以将数据发布到JsonP?还是所有数据都必须作为GET请求传递到查询字符串中? 我有很多数据需要跨域发送到服务,并且太大,无法通过查询字符串发送 解决这个问题有哪些选择? 问题答案: 由于同一个原始策略的(相当明智的)限制,因此无法与另一个域上的服务进行异步。JSON- P之所以起作用,是因为允许您将标签插入DOM,并且它们可以指向任何地方。 当然,您可以使用常规形式的POST来

  • 这是我尝试用以下代码发送到api文件夹中的pictures控制器的数据: 这将抛出一个数据库错误,该错误表示我违反了外键约束(我认为这是因为为空)。但是,我只想看看发布的数据的外观,但是当我尝试使用函数输出时,没有显示出来。我试图发布一个实际工作的JSON体。我的问题是如何获得通过表单数据发送的控制器中的数据。 编辑我确实输出了请求数据,但为true。当我尝试使用输出时,我会得到以下信息: 编辑2

  • 问题内容: 对于javascript / ajax,我是一个真正的菜鸟,因此对您的帮助将非常感激 但主要关注菲尔·萨克雷留下的答案。我想知道是否有人可以详细说明我们如何(如果可以的话)使用jquery通过他的示例传递值/数据。他留下的代码示例如下: 例如,我们要使用php将任意数量的值传递给数据库,有人可以给我一个有关javascript函数所需内容的摘要示例吗?或详细说明上面发布的内容? 再次谢