如何在节点js中解析SQL存储过程的输出?

时间:2016-11-16 03:53:23

标签: json node.js stored-procedures node-seriate

我在创建用户时使用seriate调用存储过程来注册用户和输出JSON,并且第一个值{"":208}是生成的userId

{"sets":{"sp_CreateNewUser":[[[{"":208}],[{"":1664}],[{"":1665}],[{"":1666}],[{"":1667}],[{"":1668}],[{"":1669}],[{"":1670}],[{"":1671}],[{"":210}],[{"":212}]],0]},"transaction":{}}

当它失败时它看起来像

{"sets":{"sp_CreateNewUser":[[[{"":-1}]],0]},"transaction":{}}

如何解析此输出以获取userId并将其传递给下一个函数,或者如果输出-1则执行另一个函数。

2 个答案:

答案 0 :(得分:0)

由于您的响应采用json格式,因此您可以使用JSON.parse()函数。或者您可以将输出json分配给数组/变量,并使用for循环可以遍历它并访问它

答案 1 :(得分:0)

尝试所有类型的解析和循环方法后没有运气, 不确定它是否是最好的方法,但我发现我可以抓住并分配 以这种方式变化

var id = user.sets.sp_CreateNewUser['0']['0']['0'][''];

成功后,我会在失败时获得id = '208'id = '-1'