当数据存储在csv文件中时,在Nodejs中响应查询

时间:2017-07-12 15:41:40

标签: node.js swagger backend

这是我第一次在桌面应用程序中工作几个月后做网络应用程序,所以我对这个问题有点迷失。我正在swagger开发nodejs中的微服务。该微服务接收具有3个参数的用户的请求,并且这些参数允许微服务在excel文件中找到值并将其返回给用户。为了做到这一点,我有一个名为Rates的控制器接收请求并向用户发送csv文件中的选定值。

为此,我需要在服务器启动时将数据结构中的csv加载为javascript Map(键,值):

  • 每一行的第一个值将是该对的关键字。
  • 该行的其余部分将是该对的值,以数组形式存储。

我不喜欢使用nodejs,所以我不知道最好的方法是什么...我有一些问题:

  1. 使用带有全局映射(mapData ie)的类和两个静态方法是一个很好的解决方案,一个用于在服务器启动时加载数据,另一个用于响应用户查询在字典中搜索值?
  2. 我如何在项目的骨架中构建它?我应该使用函数创建一个帮助器并使用初始化http服务器调用app.js文件中的load函数并从Rates控制器调用搜索功能吗?
  3. 感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

  1. 是的,这是一个很好的解决方案,你应该绝对阅读你的excel文件一次,并以易于搜索的格式将其存储在内存中
  2. 你可以做你想做的事,我会做的是以下几点:
    • services / CSVService.js:展示您阅读的两种方法&搜索csv文件
    • api / controllers:声明您的控制器并在控制器内调用CSVService.search()
    • api / routes:声明您的路由(引用控制器)
    • server.js:启动服务器并要求api,一旦启动就调用CSVService.read()