我以前在 python 上编程。我几个月前就开始了,所以我不是“大师”类型的开发人员。我也知道 HTML 和 CSS 的基础知识。
我看到一些关于 node.js 的教程,我真的很喜欢它。我无法用我从 html 和 css 中获得的知识来创建这些表单、条形图、按钮等。
我可以使用 node.js 创建用户在浏览器上看到的内容并使用 python 编写如果有人按下“提交”按钮会发生什么?例如重定向、sql 读写等。
谢谢
您可以在节点服务器的后端调用 python 脚本,以响应用户单击按钮。为此,您可以使用child_process
包。它允许您调用安装在您机器上的程序。
例如,当用户在 /reg 页面上发布某些内容时,如何运行脚本:
app.post('/reg', function(request, response){
spawn = require('child_process').spawn;
path = "location of your script";
// create child process of your script and pass two arguments from the request
backend = spawn('python',[path, request.body.name, request.body.email]);
backend.on('exit', function(code) {
console.log(path + ' exited with code ' + code);
if(code==0)
response.render('success'); //show success page if script runs successfully
else
response.redirect('bad');
});
});
必须在您的系统中安装 Python 以及您需要的其他 Python 库。它无法响应/重定向到节点的请求,否则你为什么要使用节点。在罗马做到入乡随俗。在 node 中使用 JavaScript,调用外部程序没有使用 JS 库那么快。
Node.js 是一个服务器端JavaScript 环境(如 Python)。它在服务器上运行并与数据库交互,生成客户端看到的 HTML,但实际上浏览器并不直接访问。
另一方面,浏览器直接运行客户端JavaScript。
如果你想在服务器上使用 Python,你可以使用一堆框架:
我认为您正在倒退考虑这个问题。Node.js 允许您在没有浏览器的情况下运行浏览器 Javascript。你不会发现它在你的 Python 编程中很有用。如果您想坚持使用 Python,最好使用诸如 Pajamas 之类的框架来使用 Python 编写 Javascript,或者使用其他框架(例如 Flask 或 Twisted)将 Javascript 与 Python 集成。