javascript - Nodejs服务器中 应该何时res.end()呢?
伊谢尔伦
伊谢尔伦 2017-05-17 09:56:21
[Node.js讨论组]

有这样的一个场景 '/blog' 路由下要处理用户提交的数据
假设要把三份数据存储给三个key 然后代码写出来就变成这样

function handlePostBlog(req, res){
    resid_client.set( key1, data1, function(err, response){
        resid_client.set(key2, data2, function(err,response){
            resid_client.set(key3, data3, function(err, response){
                if(response === 'ok'){
                    res.writeHead(200, ...)
                    res.end()
                }
            })
        })
    })
}

不考虑好不好看。。虽然用promise包装的好看一些 但是在最后一个回调中res.end()来关闭连接,是不是存在问题?这个请求会被挂起很长一段时间把?一般这种地方应该怎么处理?因为只需要set而不需要返回结果给用户,所以收到请求之后就直接res.end()来关闭连接可以不?

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回复(1)
曾经蜡笔没有小新

看页面显示和数据库操作结果有没有相关性。如果有相关性,可以等待数据库操作结束之后返回。也可以做成异步队列的方式直接返回,成功后在推送结果。最终怎么样,还是看你需求。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号