javascript - Node.js:响应是否发送给正确的用户?

标签 javascript node.js coffeescript

假设我有这个简单的代码,它用 .XML 文件进行响应。

app.post '/incoming', (req,res) ->
    console.log "Hello, incoming call!"
    message = req.body.Body
    from = req.body.From

    sys.log "From: " + from + ", Message: " + message 

    test = "hello"
    r = new Twiml.Response()
    r.append(new Twiml.Say('Hello, there!' + test + ' Enter your ATM card PIN'))
    console.log(r.toString())

    res.send r.toString()

是否有可能如果同时发出 2 个请求,其中一个会得到错误的响应?我问这个问题是因为我不完全理解异步是如何工作的以及这是否正在做我想要它做的事情。

谢谢

最佳答案

如果您想知道响应发送到哪个客户端,请从正文中删除除与 res 交互的代码之外的所有代码,如下所示:

app.post '/incoming', (req,res) ->
    res.send r.toString()

现在您可以看到您将 r.toString() 发送到了正确的响应。

Is it possible that if 2 requests come at the same time,

即使同时有 2 个请求,JavaScript 也是单线程和阻塞的,因此永远不会出现任何竞争条件。

关于javascript - Node.js:响应是否发送给正确的用户?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7326258/

相关文章:

coffeescript - 你如何在 Coffeescript 中编写一个空的 while 循环?

javascript - CoffeeScript 代码中无与伦比的突出缩进

javascript - JavaScript 弹出窗口无响应。我可以从我的网站禁用它们吗?

javascript - 如何在页面加载事件上将焦点设置到文本框

javascript - Node JS 如何从函数的回调函数访问全局变量?

javascript - 如何从 .NET 编译 CoffeeScript?

javascript - extjs中的反馈消息

node.js - 如何从 Google API 获取用户信息配置文件?

javascript - 如何在回调函数中访问app.get的 'response'参数

javascript - 尝试让示例 Node.js 应用程序正常运行