【问题标题】:NodeJS, DOM environment, HTMLNodeJS、DOM 环境、HTML
【发布时间】:2020-03-30 23:00:49
【问题描述】:

我想知道是否有办法将 NodeJS 后端实现到前端 DOM 环境。我有一个用 NodeJS 编写的应用程序,但我希望用户能够在我的托管解决方案上使用响应式 GUI 连接到常规 html 页面,因为我需要从 NodeJS 文件访问我的函数并将其引用为前端 html 的脚本。这可能吗?谢谢!

【问题讨论】:

  • 更多细节会有所帮助
  • 听起来 Babel 可以满足你的需要,但这取决于你的意思,@user13043325

标签: javascript html node.js backend web-development-server


【解决方案1】:

至少有3种方式:

1。将后端代码移到前端

如果您的 javascript 代码可以在浏览器中运行,那么实际上根本没有理由使用 node.js。

2。 API

执行此操作的标准方法是拥有一个用作网络服务器的 node.js 后端(即:expressjs),提供与您希望能够访问的 node.js 函数接口的 REST API前端。要与前端的 api 交互,您可以使用 fetchXMLHttpRequest。这种方法的一个好处是,如果它适用,您可以在远程主机上运行后端,只需稍作改动

3。 WebSocket

如果您的数据必须接近实时和/或经常更改,那么 websocket 可能是最佳途径。您可以在后端安装 ws 之类的软件包,并在前端使用内置的 WebSocket API

【讨论】:

  • 取决于后端的使用方式,如果应该从服务器推送一些实时更新,则可以使用 WebSocket,但我同意您的其余答案
  • @user13043325 你试过使用cors吗? github.com/expressjs/cors
  • Express 将前端与后端代码“连接”起来。当您使用 JS(例如 fetch)从前端(您的 HTML 页面)发送请求时,Express 可以捕获请求、解释它、运行您的后端代码(您已经拥有该代码),然后返回响应到您的页面。
  • @ridderhoff,你忘了改第一行“有两种方法:”
  • fetch('/path/to/api?query=here', {options: here}, callbackMethod)
猜你喜欢
  • 2020-01-23
  • 1970-01-01
  • 2020-05-09
  • 2014-08-28
  • 1970-01-01
  • 1970-01-01
  • 2018-04-04
  • 2019-01-04
  • 2013-03-11
相关资源
最近更新 更多