来自 Express 服务器的客户端中的 console.log()

是否可以在后端使用 console.log() (我使用的是express)在前端输出内容。例如:

const express = require('express');
const app = express();
client.console.log('Hi');

我该怎么做呢?
谢谢。


缥缈止盈
浏览 137回答 3
3回答

慕森王

服务器没有内置支持在客户端控制台中显示某些内容。我不确定实际的用例是什么,因为控制台通常是一种调试辅助工具,而不是实际的最终用户的东西。无论如何,如果您想这样做,则必须在客户端和服务器上都有协作代码,然后该代码的工作方式取决于您要将信息放入控制台的上下文。从页面加载在页面加载时,服务器可以在页面中嵌入一个小脚本,该脚本会在页面加载和运行时输出到浏览器控制台。来自 Ajax 调用在这里,您可以在返回的 JSON 中包含一个属性,其中包含所需的控制台消息,然后进行 ajax 调用的客户端代码必须获取该属性并使用console.log()它进行调用。从服务器上的任意随机时间开始如果您不在来自浏览器或网页 Javascript 的现有请求的上下文中(如前两点所示),那么您将需要在网页和服务器之间连接一些推送通道,例如 webSocket 连接、 socket.io 连接或 SSE 连接。然后,您可以向客户端发送消息,客户端需要一些代码来侦听这些传入消息,然后在收到消息后将它们显示在本地控制台中。

jeck猫

正如 jfriend00 所说,没有支持,但有一种方法可以解决这个问题。假设用户请求 /test 你想显示in his consoleHello World 所以你这样做:const express = require('express')const app = express()app.get('/test', (req, res) => {&nbsp; return res.send('<script>console.log(Hello world!)</script>')})这充当完整的客户端控制台日志。就这样吧。(单次)或者如果您想不断发布控制台消息(多次),请按照jfriend在他的帖子中所说的那样设置socket.io。

慕桂英4014372

尝试一下:Express 的“res”对象的“send”方法是在请求事件中向客户端发送响应的多种方法之一。const express = require('express')const app = express()app.get('/test', (req, res) => {&nbsp; return res.send('Hello world!')})
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Html5