我已经成功编写了一些nodejs HTTP处理程序,以响应HTTP请求中的数据。然而,我编写的所有内容都是使用函数的*Sync版本。现在,我很快就会遇到这种方法的局限性。
然而,我无法正确地在HTTP请求上下文中使用异步函数。如果我尝试异步调用,处理过程会迅速结束并返回,没有给代码处理数据的机会。
正确的方法是什么?我找不到任何好的例子,所以任何指向文献的指针都是受欢迎的。除此之外,有一个扫描本地目录的GET请求处理程序的示例,并返回文件名和相应行数的json列表(或者任何上述的存根代码,显示适当的技术)吗?
然而,我无法正确地在HTTP请求上下文中使用异步函数。如果我尝试异步调用,处理过程会迅速结束并返回,没有给代码处理数据的机会。
正确的方法是什么?我找不到任何好的例子,所以任何指向文献的指针都是受欢迎的。除此之外,有一个扫描本地目录的GET请求处理程序的示例,并返回文件名和相应行数的json列表(或者任何上述的存根代码,显示适当的技术)吗?
yield
就非常接近了。我仍然建议使用“Promises”(https://github.com/petkaantonov/bluebird),这些“Promises”已经内置到node中,但我链接的蓝鸟库可以将不支持“Promises”的库变成“Promises”。我强烈推荐“Promises”……我认为它们大大简化了异步流程。[async](https://github.com/caolan/async)也很受欢迎。最后,你可以自己打造实现方式。 - Explosion Pills