0

ローカルネットワーク上のコンピュータにWake on LANコマンドをブラウザから送信することはできますか(サーバーサイドコードなし)。 私はネットワークを完全に制御しています。 私は無線LAN経由でタブレット上で実行されているブラウザから、同じLAN上の有線コンピュータに転送したいと考えています。 Node.JS JavaScriptコード:https://github.com/agnat/node_wake_on_lan/blob/master/wake_on_lan.js が見つかりましたが、ブラウザで動作するかどうかわかりません。ブラウザからWake on LAN経由で

答えて

0

ノードはサーバーサイドベースであり、Javascriptランタイム環境を使用しています。許可を得られないものは実行できません。

ZuLukasが大丈夫です。プレーンなJavaScriptコードではこれを行うことはできません。 あなたはここに何かを見つけるかもしれません: https://github.com/hypery2k/cordova-wol-plugin 私はそれが多くの努力なしにあなたの最高の試みであると思います。

PhoneGapを学ぶ必要があります。次に、ハイブリッドアプリケーションを作成します。 しかし、JavaScriptはそれを行うことができません。あなたはそれを行うためにjavascriptをコードしますが、それはネイティブリソースを呼び出し、ブラウザ環境では実行されません。

1

「マジックパケット」とJavascriptをディスパッチするシステムコール。システムコールを使用できるバックエンドの魔術の形式がなければ、これを行うことはできないようです。私の経験上、Javascriptは、クライアント側で処理を実行し、サーバー側と通信することができますが、制御はできません。

もう一度、私はウェブ開発者ではありません。私の限られたウェブ体験では、あなたのオペレーティングシステムと話すために何かが必要であることがわかります。それは最終的にWoLマジックパケットを送信します。

0

いいえ、できません。

WoLはUDPブロードキャストパッケージをLANに送信する必要があります。しかし、ブラウザはUDPパッケージ用のAPIを公開していません。

サーバー側のコーディングまたはブラウザプラグインが必要です。 udp apiを使用する独自のプラグインを作成できます。

+0

ブラウザのサンドボックスから脱出して実行可能ファイルを実行する方法はありますか? – Type955

+0

@ Type955おそらく、ユーザーにブラウザ拡張機能をインストールさせる必要があります。Windowsでは、Active Xを使用してそれを行うことができます。 – Barmar

+1

@ Type955はい、[ネイティブメッセージング](https://developer.chrome.com/extensions/nativeMessaging)と呼ばれています。しかし、あなたは「タブレット上で走っている」と言っています。タブレットの定義によっては、拡張機能をまったくサポートしていないかもしれません。 – Xan

1

Nodejsは、特にサーバーサイドコードを書くためのものです。サーバーなしではこれを行うことはできません。しかし、ラズベリーパイのような小さなコンピュータをあなたのサーバに買うことができます。

あなたはする必要があります:

  • 購入ラズベリーパイまたは類似した何かのような小さなシンプルなコンピュータを(このコンピュータはしかし、すべての時間オンにする必要があります)
  • その上のノードをインストールします。
  • ラズベリーがインターネットから(ブラウザ拡張のような)コマンドを受け取り、起きたいコンピュータにローカルの「マジックパケット」を送るためのJavaScriptを書きます。
  • 次に、クライアントプログラムを作成します。あなたのサーバー(ラズベリーパイ)にhttpのものを送ることができるブラウザの拡張機能やアンドロイドアプリのようなものです。

サーバーコードを書き込む場合は、ノードライブラリであるhttps://www.npmjs.com/package/node-wolを使用できます。

関連する問題