如何使用Node.js将序列化表单数据解析为json

时间:2015-03-05 23:14:53

标签: json node.js express socket.io

我使用Angular和Node.js + Express 4 + socket.io。

我想将表单发送到服务器throw socket.io。我在Angular应用程序中创建了一个服务,它返回序列化的表单数据。此服务的工作方式与jQuery.serialize()相同。

然后我使用socket.io将序列化数据发送到服务器。如何将此数据解析为JSON对象?我表达了身体解析,但我不知道如何使用它而不是像快速中间件。

1 个答案:

答案 0 :(得分:3)

根据jQuery docsjQuery.serialize()将创建一个包含以下表单中的表单元素的查询字符串(示例):

single=Single&multiple=Multiple&multiple=Multiple3&check=check2&radio=radio1

要将查询字符串解析为对象,可以使用querystring Node.js模块:

var qs = require('querystring')
qs.parse('single=Single&multiple=Multiple&multiple=Multiple3&check=check2&radio=radio1')
// Prints:
{ single: 'Single',
  multiple: [ 'Multiple', 'Multiple3' ],
  check: 'check2',
  radio: 'radio1' }