从node.js应用静态提供的html中直接访问node.js应用函数
Access node.js app functions directly from html served statically from that node.js app
好吧,我可能在这里问得太多了,而且/或者表现出我的天真,但是请原谅我。
目前我有一个html(带js)托管在A,和node.js应用托管在B。html/js通过XMLHttpRequest
从节点应用获取数据,节点应用在B尽职尽责地生成请求的数据并将其发送给A。
我想减少http请求的数量,并简化性能一般,和是否可以通过节点主机的html/js应用程序(通过express.static()
)所以当html/js请求节点的数据服务器,它实际上从相同的服务器请求数据,实际上都在相同的应用程序(因为节点应用程序生成的数据和节点应用程序也将html/js静态路由)。
那么有没有办法让html中的js更直接地访问节点应用程序的功能,也就是说,而不是向同一个节点应用程序发送http请求,只是直接访问节点应用程序中的数据生成功能,或者至少不使用http请求?
我有东西设置在我的节点应用程序,以便html/js可以通过express.static()
成功托管-所以它的工作在这个程度上是OK的-但我只需要知道是否有可能避免一个http请求一直绕着一个大循环,回到同一个节点应用程序!
简单的答案是,如果A和B相距很远,是的,将它们托管在同一台服务器上会有所帮助。
从同一个应用程序中提供它们是没有用的,因为你仍然需要通过HTTP进行通信。
是否可以从A到B删除HTTP调用的问题取决于应用程序设计。你有一个静态的web应用程序和一个API,你基本上是在考虑把它变成一个应用程序。两者都有利弊,但如果我开始列出它们,我将沿着个人意见的道路。
我的投票,不用麻烦了:)
当你通过express.static()提供html和js文件时,它们不是在服务器中运行,而是从服务器到浏览器。js脚本在浏览器中运行。浏览器脚本要与服务器通信,必须使用http/https请求或套接字。您可以从服务器A与服务器B通信浏览器脚本(但要检查CORS)。
- 在openshift node js应用程序中获取请求
- 使用CI和CodeDeploy对node.js应用程序进行连续部署
- 如何构建angular.js应用程序
- node.js应用程序中的async.js问题
- 使用connect vhost为多个express.js应用程序提供服务
- 在node.js应用程序中接收JMS消息
- JS应用程序中基于DOM的XSS保护
- Express.js应用程序最大CPU
- Node.js应用程序-由NPM启动时的不同Node_ENV
- 如何将现有的angular js应用程序集成到Laravel 5中
- React js应用程序's在托管应用程序中打开时将覆盖css样式
- angular js应用程序不工作
- 使用Sails.JS为静态HTML/JS应用程序提供身份验证
- 如何计算angular JS应用程序(单页应用程序)的页面加载时间
- 使用Q节点模块时,Bluemix node.js应用程序部署失败
- Heroku类型的简单HTML/JS应用程序托管
- 通过SSL/TLS连接访问Vagrant上的Node.js应用程序
- 在Backbone.js应用程序中使用lodash而不是下划线
- fs.readFileSync()在express js应用程序中失败
- 在Chrome和Safari中启动Angular JS应用程序的差异