javascript - 从使用 Express 的 Node JS 服务器导出一个变量,以便我可以在客户端访问它?

标签 javascript node.js reactjs express

有没有办法从使用 Express 的 Node JS 服务器发送变量,以便我可以在客户端访问它?

我希望这个变量存储来自服务器的本地值并从我的客户端 JavaScript 访问它。

我发现

app.locals.environment = 'myValue'

可以在我的服务器中设置本地值。有什么方法可以在我的客户端访问它吗?我在客户端代码中使用 react 架构。

最佳答案

服务器和客户端是完全独立的实体,仅通过相互发送消息进行通信。

您需要将变量中的数据编码为字符串,然后将其发送到浏览器,浏览器需要准备好处理响应。

通常这些消息通过 HTTP 发送,但有时会使用其他技术(WebSockets 是最常见的)。

您无法从服务器启动 HTTP(它是一个请求->响应系统),但浏览器可以请求包含数据的页面...

  • 以嵌入的形式表达<script>设置全局变量
  • 作为某些元素的属性值(例如 <body data-foo="bar"> )

...或者您可以从浏览器进行 Ajax 响应并提供合适的序列化格式(例如 JSON)。

如果您想从服务器发起请求,请查看 WebSockets(尤其是围绕它们的 Socket.IO)。

关于javascript - 从使用 Express 的 Node JS 服务器导出一个变量,以便我可以在客户端访问它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41463589/

相关文章:

Javascript 启用按钮 ie6

mysql - 异步和 Knex : how they work ?

node.js - 如何使用 Parse Server 登录/注册用户?

reactjs - 如何处理 Flux 商店中的一对多关系

javascript - urql useQuery 的暂停选项不会暂时卡住请求

javascript - 如何使用 jQuery 获取 Object 集合的子元素的值?

javascript - 第三个引用中有一个分号,引用显示正确,但推文不正确。它在分号处 chop

javascript - 导致 404 的基本 nodejs 路由

javascript - 将 GooglePay 与 React 集成

javascript - 基于事件导航选项卡的动态 MVC Razor href