2

私はPythonでプログラミングをしていました。私は数か月前に始めたので、「教祖」タイプの開発者ではありません。HTMLとCSSの基本も知っています。

node.js に関するチュートリアルはほとんど見ませんが、とても気に入っています。html と css の知識では、これらのフォーム、バー、ボタンなどを作成できません。

node.js を使用して、ユーザーがブラウザーに表示するものを作成し、誰かが「送信」ボタンを押した場合に何が起こるかを python で記述できますか? たとえば、リダイレクト、SQL の書き込みと読み取りなどです。

ありがとうございました

4

3 に答える 3

4

ユーザーによるボタンのクリックに応答して、ノード サーバーのバックエンドで Python スクリプトを呼び出すことができます。そのために、child_processパッケージを使用できます。マシンにインストールされているプログラムを呼び出すことができます。

たとえば、ユーザーが /reg ページで何かを POST したときにスクリプトを実行する方法は次のとおりです。

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 ライブラリと共にシステムにインストールする必要があります。ノードへのリクエストに応答/リダイレクトできません。そうでなければ、なぜノードを使用するのでしょうか。ローマにいるときは、ローマ人がするようにしなさい。ノードで JavaScript を使用します。外部プログラムの呼び出しは、JS ライブラリを使用した場合ほど高速ではありません。

于 2013-03-10T05:19:38.233 に答える
3

Node.js はサーバーサイドのJavaScript 環境です (Python と同様)。サーバー上で実行され、データベースと対話し、クライアントに表示される HTML を生成しますが、実際にはブラウザーから直接アクセスされることはありません。

一方、ブラウザーはクライアント側の JavaScript を直接実行します

サーバーで Python を使用する場合は、使用できるフレームワークが多数あります。

于 2013-03-09T21:22:55.573 に答える
0

あなたはこの問題を後ろ向きに考えていると思います。Node.js を使用すると、ブラウザーなしでブラウザー Javascript を実行できます。Python プログラミングでは役に立たないでしょう。Python に固執したい場合は、Pyjamas などのフレームワークを使用して Python で Javascript を記述したり、Flask や Twisted などの別のフレームワークを使用して Javascript を Python に統合したりすることをお勧めします。

于 2013-03-09T21:14:42.617 に答える