【发布时间】:2020-10-10 22:24:21
【问题描述】:
我想在我的快速路由中呈现一些 HTML 文本。我知道其中一个选项是使用 npm-needle 模块,但我不确定我们是否有任何方法可以在定义的同一路由中使用 npm-express 和 npm-http。
我想要的是这样的:
var http = require("http");
var express = require("express");
var app = express();
app.get("/", function (req, res) {
var params = req.params;
var url = req.query["url"];
let handleRequest = (request, response) => {
response.writeHead(200, {
"Content-Type": "text/plain",
});
response.write("Hi There! " + url);
response.end();
};
});
app.listen(5000);
//http.createServer(handleRequest).listen(8000); ---> not using this in the code
这种类型的东西可能吗?谢谢!
【问题讨论】:
-
不,您展示的内容是不可能的。您不能在路由中定义
handleRequest(),然后在其他地方使用它。如果需要,您可以在路由处理程序中使用res.send("some text");,但您必须更好地描述您正在尝试做什么。完全删除http.createServer()行。您的 http 服务器已经在app.listen()内部创建。 -
好的,所以我关注了stackoverflow.com/questions/29328028/…,但我无法在浏览器中呈现我的
url变量。 res.send(`{{url}}
`) -
如果您在该问题中尝试过类似的内容,则必须显示您在问题中尝试过的实际代码。您现在在问题中的内容与该问题中的内容完全不同。你看到混淆了一堆东西。您可以使用
res.send('<h1>' + url + '</h1>');发送您的 URL。{{url}}语法涉及使用模板引擎来呈现您的页面,这完全是另外一回事。您不能只是从随机问题中获取一小段代码并将它们插入到您的项目中。您需要了解事情的实际运作方式。 -
如果你写了一个明确的问题(在你的问题中,而不是在 cmets 中),它解释了你想要做什么,也许人们可以帮助你解决最初的问题。
-
感谢@jfriend00 的帮助!这是非常基本的东西,但我有点不知所措,下次我会记住这一点!
标签: node.js express http npm needle.js