如何在网站的URL中"create"不同的路径,并为每个路径调用不同的"status"?



我用javascript写了一个程序,你可以用它来绘制画布。现在我用nodejs创建了一个Web服务器,并尝试实现,你可以在这个网站上绘制一些东西,对于这个特定的图片,URL会创建一个额外的路径,你可以调用它,你可以到达上次停止绘制的图片。这是代码:

var http = require("http");
var fs = require('fs');
http.createServer(function (request, response) {
console.log(request.method, request.url);
console.log("  ", request.url.substring(1));
if (request.url === '/') request.url = '/draw.html';
fs.readFile(request.url.substring(1), function (err, data) {
console.log("Datei lesen", err);
response.writeHead(200, {'Content-Type': 'text/html'});
if (err) {
response.write("Kann nicht geladen werden: "+request.url);
} else {
response.write(data);
}
response.end();
});
}).listen(8081);

这只是给出一个"页面"。我在找这样的东西http://127.0.0.1:8081/image123/draw.html→然后你就可以用身份证123拍照了。因此,您可以为每张图片创建不同的路径,以便访问每张图片。

也许是这样的:

if (url.includes('bild') && /[0-9]/.test(url)) {
request.url = ???;
}

谢谢!

您需要像ExpressJS这样的中间件。在ExpressJS中,您可以使用参数化查询:

const express = require("express");
app = express();
app.get("/:image/draw.html", (req, res) => {
console.log(req.params.image); // image123
// So, if you need that 123, then you can do:
console.log(parseInt(req.params.image.replace("image", ""), 10)); // 123
});

上面replace()功能的原因是它只替换了一次:

» "image123image".replace("image", "");
« "123image"

最新更新