如何在 Express+Node.js 中发送一些 HTML、渲染视图,然后发送更多 HTML?

发布于 2024-11-17 19:49:24 字数 398 浏览 1 评论 0原文

我正在使用 Node.js+Express,我遇到过一种情况,我需要发送一些 HTML,渲染一个视图,然后在一个响应中发送更多 HTML。

流程是:

res.send('some html');
res.render('module.html', {});
res.send('more html');

现在我知道 res.render 支持回调,所以我可以这样做:

res.render('module.html', {}, function () {
    res.send('more html');
});

但是 res.send() 似乎不支持。有办法实现这一点吗?

I'm using Node.js+Express, and I've come across a case where I need to send some HTML, render a view, then send some more HTML in the one response.

The flow would be:

res.send('some html');
res.render('module.html', {});
res.send('more html');

Now I know that res.render supports a callback, so I could do:

res.render('module.html', {}, function () {
    res.send('more html');
});

But res.send() doesn't appear to. Is there a way to achieve this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

小红帽 2024-11-24 19:49:24

就像 Raynos 所说,我建议查看查看部分。作者 TJ 的此视频介绍了基础知识。

作为旁注,res.send 发送完整的响应,然后关闭连接。如果您想在此之后发送更多文本,则不能使用它。 在此处输入图像描述


所以您必须使用节点.js 原生 res.write 来执行您的操作想要代替。

Like Raynos Said I would recommend looking into view partials. This video from Author TJ explains the basics.

As a sidenote res.send send a full response and then closes the connection. You can not be using that if you want to send more text after that.enter image description here


So you have to use node.js native res.write to do what you want instead.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文