![](/img/trans.png)
[英]How to send data along with file in http POST (angularjs + expressjs)?
[英]How to send an AngularJS file with ExpressJS?
我是ExpressJS的新手,我有一个使用EJS的小例子,但我想使用AngularJS来操作DOM。 两种技术都为我提供DOM操作,那么为什么有人一起使用它呢? 我不明白
我不知道如何呈现HTML文件。 将AngularJS与ExpressJS结合使用的正确方法是什么?
res.render('index.html');
据我所知,EJS实际上是用于模板化的,没有嵌入式js在客户端上执行。
我个人发现在某些情况下可以在AngularJS或任何客户端框架中使用模板语言。 例如,有时能够将一些csurf令牌或客户端应用程序所需的会话数据插值到服务器上的html中是很好的。 其他时间则没有必要。
至于呈现html,请使用express.static
中间件。 Express附带了它,您传递了文件路径,并返回了将处理给定目录内容的处理程序。 您可以将express.static
放在中间件链中的任何位置,但是我通常将其放在顶部,以避免命名问题。 阅读文档以获取更多信息。
考虑以下:
var express = require('express')
var app = express();
// Asssuming we have a directory
// `public` in the root of the application
app.use('/', express.static(__dirname + '/public'));
// now you're serving all the files in public directory off the root path
// Add middlewares and routes...
对于一个非常简单的应用程序,您可以使用fs
模块,并将文件内容流式传输到响应。 下面是一个简单的示例,说明如何执行此操作,在生产环境中,您将希望侦听error
事件并实现某些缓存控制。
app.get('/', function(req, res) {
res.set('Content-Type', 'text/html');
fs.createReadStream('./index.html').pipe(res);
});
请使用:第一次渲染,有关更多信息,请访问http://www.tutorialspoint.com/nodejs/nodejs_express_framework.htm
var express = require('express');
var app = express();
app.get('/', function (req, res) {
res.sendFile( __dirname + "/" + "index.html" );
})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.