为NodeJS转换api json响应

我最后不得不做黑客将'true'转换为true ,这是创造代码的气味。

是否有像https://github.com/thephpleague/fractal这样的库,可以将我的响应转换为我需要的types?

在这种情况下,修复API以可用格式返回数据几乎总是更好,而不是试图在客户端上后处理结果。

在你的情况下,你可以采取几条路线:

  1. 将列表直接存储为数据库中的JSONstring。

    这意味着您不必在服务器上进行任何处理,只需按原样返回即可。 但是你失去了直接对数据进行查询的能力,需要使用LIKE和string操作。

  2. 关系存储数据,并在服务器上处理它,把它变成JSON

    在这里您可以保留对数据执行查询的function,但是您可能需要执行多个查询来获取所需的所有数据,然后将其连接到服务器上。 (例如,您将在user表上执行一个SELECT来获取用户,然后您需要在用户标识符与您的第一个用户相匹配的friends表上执行另一个SELECT操作,然后您需要合并这些结果以创build您的JSON )这通常是最好的办法。

  3. 您也可以使用用户定义的函数直接在数据库引擎内将结果转换为JSON。 例如使用https://github.com/mysqludf/lib_mysqludf_json#readme

    这有点类似于2,但是它将存储的特效绑定到JSON格式。