多くのJSアプリケーションはクライアント側です。しかし、私がArduinoとインターフェースしたいのであれば、Node.jsのようなものを使ってサーバー上で行う必要があります。どうしてこれなの?Javascript/web dev:なぜハードウェアに接続するにはサーバーが必要ですか?
答えて
セキュリティとクロスプラットフォームの理由から、Webアプリケーションはsandboxに制限されています。もともと、WebアプリケーションはURLをロードしたり、フォーカスを合わせたときにキーボード/マウス入力を処理したり、ウィンドウ内の表示を制御したりすることができます。
その他のものは、ブラウザが提供しなければならない追加のAPIに依存するため、デフォルトの状態は何もありません。セキュリティ上の理由から、オペレーティングシステムのAPIにはWebアプリケーションからアクセスできません。
なぜ現在のブラウザにArduinosにアクセスするためのAPIがないのですか? every feature starting at -100 pointsとは別に、セキュリティを損なうことなくUSBデバイスへのアクセスを許可することは非常に難しいです(たとえば、WebアプリケーションでUSBキーボード入力を読み取って将来のパスワードをすべて取得するか、foot warmerを過熱するなど)。
幸いにも、そのような標準が現在開発中です。これはWebUSBと呼ばれています。ただし、can enable it in Chromeの値をchrome://flags/#enable-experimental-web-platform-features
に変更しても、2016年5月現在はデフォルトでブラウザがサポートされていません。
デバイス制御にJavaScriptを使用する全く異なる方法は、OPノートのようにNode.js経由で行うことに注意してください。そのアプローチはブラウザの問題を完全に回避します。 – Pointy
- 1. mysqli_escape_stringにデータベース接続が必要なのはなぜですか?
- 2. iOSアプリレビュープロセス:アプリに外部ハードウェアが必要(WiFi経由で接続)
- 3. データをWebサーバーにストリーミングするにはソケット接続が必要ですか?
- 4. なぜnumpyをインストールするには、Kubuntu 12.04でpython-devが必要ですか?
- 5. Selenium Webdriverにサーバーが必要ないのはなぜですか?
- 6. pyqtSlotで接続スロットを飾る必要があるのはなぜですか?
- 7. 直接TCP \ IP接続には何が必要ですか?
- 8. ActiveRecordObject.newを使用するには接続が必要ですか?
- 9. Androidサーバー:着信接続がランダムにタイムアウトするのはなぜですか?
- 10. Socket.io:サーバーが2つの接続が必要です。
- 11. libssh2を使用して、キーとパスワードが必要なSFTPサーバーに接続する
- 12. node.jsサーバーにmysqlインスタンスへの単一接続が必要ですか?
- 13. ノードがシングルスレッドのときにnode.jsに接続プールが必要なのはなぜですか?
- 14. 最初に接続するMemcacheサーバーは重要ですか?
- 15. なぜangle2アプリを実行するにはサーバーが必要ですか?
- 16. 再デプロイするたびに接続プールをフラッシュする必要があるのはなぜですか?
- 17. 新しいウィンドウでlocalhost:3000に再接続する必要があるのはなぜですか?
- 18. PreparedStatementsを作成するために接続が必要なのはなぜですか?
- 19. iOS 7 iBeaconにはハードウェアが必要ですか?
- 20. 必要なときのみEclipseをSVNサーバーに接続
- 21. プッシュ通知にはライブインターネット接続が必要ですか?
- 22. PerlのAuthCASでCASサーバーに接続できないのはなぜですか?
- 23. ReactNative - Reactネイティブアプリをローカルホストに接続する必要があるのはなぜですか?
- 24. RTAI 4.1には実際にどのようなハードウェアが必要ですか?
- 25. Netty:なぜ異なるパケットがサーバー内の要求として一緒に接続されるのですか?
- 26. IIS仮想サーバーリレーまたはSMTPサーバーに直接接続する必要がありますか?
- 27. なぜイーサネットシールドがサーバーに接続されていないのですか?
- 28. ExpressJSを使用してサーバーに接続されたハードウェアのリアルタイムステータス
- 29. なぜPDFファイルにLOG4JとSLF4Jが必要ですか?なぜ.Docファイルには必要ないのですか?
- 30. USRP2ハードウェアを使用するにはGRCにUSRP2ブロックが必要ですか?
詳細を教えてください。あなたは何を知りたいですか? node.jsはc/C++で書かれています。これはvanilla javascriptではなく、クライアント側のために残しています – zython
これは私の状況です(私は何も知らないので、私と一緒に裸です):私はp5を使ってarduino .jsですが、サーバー上で実行できるようにノードをインストールする必要があります。なぜ私はハードウェアI/Oを使って作業しているのですが、サーバで実行する必要がありますが、サークルを描くような基本的なJS Webスクリプトを実行しているのであれば、サーバーなしですべてをローカルで実行できますか? –
通常、通信ポートを介してArduinoと通信します。 WebページのJSはポートにアクセスできません。したがって、できるサーバーを実行します。 –