¿Cómo puede esta página web acceder al USB? [cerrado]

2

Un amigo compró un auricular "inteligente" (que funciona con comandos de voz). Tuve que instalar un software en Windows para poder configurar este auricular.

Después de descargar el software de la página, esta página se redirigió a un asistente de configuración (¡aún en la página web!) y me informó que el software aún no está instalado; Debo hacer clic en Continuar cuando haya instalado la herramienta.

Después de la instalación y de hacer clic en continuar, tuve que conectar el auricular a través de USB. Tan pronto como lo hice, la página web lo reconoció y ofreció varias opciones de configuración y también mostró una barra de progreso para actualizar el firmware.

  

¿Cómopuedeestapáginawebacceder(leeryescribir)alhardwareenelUSB?O:¿Cómopuedeestesoftware"insertarse" en la página web?

Al principio pensé que podría haber instalado un complemento resp. complemento en Firefox, pero este no fue el caso. ¿Sería esto posible con Flash (no verifiqué si la página usaba Flash, solo sabía que no usaba Java)? Con JavaScript esto no debería ser posible, ¿verdad? Nunca vi un método de instalación / configuración de este tipo (aunque no estoy usando Windows, por lo que no sé si esto podría ser común). Se siente un poco sospechoso para mí. ¿No tendría que "manipular" el navegador de alguna manera? Se recomienda tal manera resp. ¿Puede implementarse de forma segura?

    
pregunta unor 06.08.2013 - 15:51
fuente

3 respuestas

4

Como dijo @Tom_Leek: haga que la herramienta ejecute un servidor web local parece ser la forma en que se utiliza:

Echo un vistazo a la URL indicada y encuentro en la primera línea de main.js :

//url for the local server
var BASE_DIR = '/inc/support/myheadset/updater/';
var LOCAL_SERVICE_URL = 'http://127.0.0.1:8011/';

El programa descargado ejecuta un servidor web local para interactuar con los navegadores.

    
respondido por el F. Hauri 06.08.2013 - 16:47
fuente
4

Cuando instala la herramienta local, todo vale (¡e incluso requiere derechos de administrador local!). La herramienta puede inspeccionar el hardware USB y solo necesita una forma de "hablar" con la página web. Una forma relativamente sencilla es hacer que la herramienta ejecute un servidor web local y que la página haga referencia al servidor web como iframe . Por lo tanto, el usuario (usted) verá que el "asistente de configuración" aparece "en la página web", pero en realidad sería solo una cuestión de visualización, ya que el procesamiento real se realiza en la herramienta instalada localmente.

Hay otras formas de hacer que el código local interactúe con una página web, pero un servidor web local es una de las más sencillas y es fácil de hacer compatible con todos los navegadores web habituales.

    
respondido por el Tom Leek 06.08.2013 - 16:24
fuente
2

Lo más probable es que el controlador exponga algún servicio en la máquina que pueda llamarse a través de AJAX. Es solo una cuestión de Javascript llamando a los servicios. También podría estar basado en Flash, pero AJAX sería más simple. También podría registrar el controlador como el controlador para algún protocolo adicional (que no sea HTTP). Por ejemplo, TeamSpeak (un cliente de chat de voz) hace esto registrando el protocolo ts: // para llamarse a sí mismo. Luego podría hacer algo como plantronics: // y realizar llamadas y las llamadas se redirigirían al controlador registrado para ese protocolo (el controlador).

Obviamente, esta es una lista no exclusiva y existen otras posibilidades, pero hay algunas formas posibles de hacerlo.

    
respondido por el AJ Henderson 06.08.2013 - 16:18
fuente

Lea otras preguntas en las etiquetas