Linux 用のコマンドを送信する WebApp を開発しています。このために、クライアントで Javascript / jQuery を使用し、サーバーで Node.js を使用しています。私のコードはこれです:
クライアント側
$("#myLink").click(function() {
$.get('http://myHost:myPort', {cmd: "rhythmbox-client --print-playing"});
});
サーバー側 (commands.js)
var exec = require('child_process').exec;
var express = require('express');
var app = express();
app.get('/commands', function(req, res) {
var command = exec(req.query.cmd);
});
app.listen(3000);
これは機能し、コマンドを正常に実行します。必要なのは、このコマンドが生成するリターンを取得することです。たとえば、ターミナルでコマンド「rhythmbox-client --print-playing」を実行すると、現在再生中の曲の名前が返されます。そして、アプリケーションの HTML ページでこの名前を使用したいと考えています。
実行するコマンドによって生成された戻り値を取得するには、コードの何を変更すればよいですか?
ありがとう(下手な英語でごめんなさい)