我需要从快递向浏览器发送警告消息。 所以,我需要帮助来做到这一点。目前我正在使用MEAN应用程序。 在这里,我必须在Express和HTML之间进行通信。从快递发送邮件到html
回答
查看快递docs并了解回复。例如:
app.get('/user/:id', function(req, res){
res.send('user ' + req.params.id); // Send to view (html,jade, ejs) somethink message
});
的RE对象表示一个Express应用发送 时,它得到一个HTTP请求的HTTP响应。
有更多的反应的方法,为res.sendFile
,res.render
,res.redirect
等
我会用快递和.ejs作为视图引擎给你举个例子。它比普通的.html提供更多的灵活性,但仍然很简单(并且看起来几乎相同)。
通过这种方式,您可以设置路由(您根据地址/路径将用户重定向到不同站点的方式),同时将数据传递到您的视图。
router.js
var express = require('express');
var router = express.Router();
router.get('/', function (req, res, next) {
res.render('someView', {msg: 'Express'});
});
以上将通过一个名为味精变量与价值快递和渲染yourView(基本上是一些网页)。
yourView.ejs
<!DOCTYPE html>
<html>
<head>
<title><%= msg %></title> // here is how you can use variable passed from back-end in .ejs templates
</head>
<body>
<h1>Hello there</h1>
</body>
</html>
当然你也可以传递数组,JSON,OBJ等你的看法。
router2.js
var arr = ['a', 'b', 'c'];
var obj = {a: 1, b: 1, c: 2, d: 3, e: 5};
var objJSON = JSON.stringify(obj);
res.render('demo', {arr: arr, objJSON: objJSON}); // key: value, so you will refer by key in your view
你也可以在视图的JS脚本中使用这个值。 例如这样
// html/ejs markup here
<body>
// bla bla...
<script>
var tmp = <%= msg %>
alert(tmp);
/* obviously you need some kind of logic when you want
alert/popup or whatever to happen. At least some simple IF statement.
*/
</script>
</body>
</html>
然而,更普遍的方式来显示消息给最终用户在明示用快速消息。看看这个link to Connect-Flash中间件。简单的用法是exapl
msg:'Express'看起来像一个弹出消息。因为我需要显示从EXPRESS –
浏览器的弹出警告也是你给的例子很容易to understand.thankyou –
这种情况是,'如果用户请求已经分配了其他用户的URL,那么在检查数据库时,我需要警告用户给出不同的URL'。可以帮我解决这个问题 –
其实我需要从EXPRESS发送一个弹出警告给browser.Is那可能吗? –
这种情况是,'如果用户请求已经分配给其他用户的url,那么在检查数据库时,我需要警告用户给出不同的URL'。可以帮我解决这个问题 –
我试过了res .send,res.sendfile ...但他们不显示弹出框 –