当前位置: 首页 > 面试题库 >

通过Ajax Post访问发送到NodeJS Server的数据

法弘亮
2023-03-14
问题内容

如何访问通过Ajax POST发送到Nodejs服务器的数据?

    //Client
$.ajax( {
    url: '/getExp',
    data: 'Idk Whats Rc',
    type: 'POST',
});

//Server
app.post('/getExp', function(req, res){
    var data = req.???; //I want data to be equal to 'Idk Whats Rc'
}

问题答案:

Express 4.x:

Express 4不再包含Connect作为依赖项,这意味着您将需要单独安装主体解析模块。

解析器的中间件可以在自己的GitHub的仓库中找到这里。可以这样安装:

npm install body-parser

对于表单数据,这是使用中间件的方式:

var bodyParser = require('body-parser');
app.use(bodyParser.urlencoded());

对于Express 3.x和更低版本:

您需要使用bodyParser()Express中的中间件来解析HTTP请求的原始内容。然后填充中间件req.body

app.use(express.bodyParser());
app.post('/path', function(req, res) {
  console.log(req.body);
});

您可能希望将一个对象而不是字符串传递给POST请求,因为您当前拥有的内容将如下所示:

{ 'Idk Whats Rc': '' }

使用如下代码:

$.ajax({
  url: '/getExp',
  data: { str: 'Idk Whats Rc' },
  type: 'POST',
});

会给你这个:

{ str: 'Idk Whats Rc' }


 类似资料:
  • 问题内容: 我有一个内置的javascript,它可以执行以下操作:通过ajax-> php-> sql获取内容,并在单击内容后在index.php上显示它,将显示新内容。 现在,我想拥有一个在将内容单击到php之后发送数据的函数,该函数将在db中执行某些操作。如何创建将发送数据的功能?谢谢! 这是我的显示内容的代码: }); }` 问题答案: 您可以通过在jQuery.ajax 设置中包含值,将

  • 所以我试图通过ajax将图像作为一个blob发送。blob的类型正确,大小约为4.5 kb。我试着这样发送: 接收页面看起来像这样: 它告诉我找不到索引“图像”。所以不仅数据没有发送,甚至索引也被省略了。我做错了什么? 编辑: toBlob和toDataURL都不会产生任何东西,只是一个空的PNG。有没有办法将数据从帧缓冲区转换成Base64编码的jpg或png?

  • 我正在尝试使用POST提交表单,但我有一些来自 标记的额外数据,这些数据已存储到JS对象中。当我从JavaScript中点击时,我想把它发送到服务器。 我尝试做的是用事件发送

  • 问题内容: 我正在使用jQuery将div的HTML内容发布到PHP文件。HTML内容包含表,输入,较小的div,我想获取主DIV的内容并将其发送到数据库。我能想到的唯一选择是POST方法,但我不知道是否可以发送纯HTML。从div发送HTML内容到要插入MySQL的PHP​​文件还有其他选择吗? 谢谢。 编辑: 我现在能够使用jQuery的POST发送完整的HTML数据。但是,来自该DIV的HT

  • 在我的应用程序中,如果多个用户使用相同的WiFi连接而不使用TCP,我希望通过WiFi将文件发送给多个用户。如何获取连接到指定wify的用户列表。我试过样品,但什么也没得到。