通过节点将数据发送到前端应用程序?
问题描述:
我有一个托管在/public
一个独立的前端应用程序和REST API的一个节点应用。前端应用程序仅通过REST与后端进行通信,但现在我需要发送初始应用程序负载的一些基本配置信息。通过节点将数据发送到前端应用程序?
与页面加载时发出ajax请求不同,我想在请求/index.html
时发送所需的配置信息,因为它是运行应用程序所必需的。
什么是设置最简单的方法的一些基本配置?
有没有一种方法可以让我成为通过节点的一些脚本,然后从服务器参数呢?
喜欢的东西 /scripts/config.js
angular.constant('value1', '#{some parameterized server value}');
我用快递。
答
您可以再补充,供应了配置的路由。 有点像。
app.get('/scripts/config.js', function(req, res) {
var content = 'angular.module(\'config\', [])\n';
content += ' .constant(\'value1\', ' + someValue + ')';
res.set('Content-Type', 'text/javascript');
return res.send(content);
}
答
做未做一个Ajax请求的唯一方法是在您的index.html你可以点读/写你的配置属性这个文件config.json文件。
在角执行的顺序是:
app.config()
app.run()
- 编译功能指令
app.controller
- 指令联
你可以把您在app.config()
或app.run()
中的kickstarting逻辑。
我相信,最好的做法,虽然是独立的你的配置逻辑模块中,并使用$ HTTP动态获取的属性。
只是一般性评论..除非最近有什么变化,你不能在app.config中使用$ http。所以不幸的是,你不能使用它来引导应用程序。即使你可以,应用程序也不会在进入运行阶段之前等待承诺。如果我在这里错了(而且我愿意这样做),让我知道。 – Stephen 2014-12-01 20:21:36
你没有错,事实上你是对的。这就是为什么我从不在'config()'或'run()'中使用$ http的原因,而是在一个单独的模块中。 – Thanos 2014-12-01 20:40:54
对,对。男人,多么沮丧。这个小功能可能会造成如此大的差别。*叹* – Stephen 2014-12-01 21:37:23