Le Web Incubator Community Group (un groupe de discussion qui envisage d'autres fonctionnalités et manières de faire pour les plateformes Web) propose une nouvelle API : WebUSB.
Ce projet est né suite à ce constat : aujourd'hui, lorsque nous connectons un appareil à notre ordinateur, nous espérons que ce dernier trouve le bon driver tout seul et que tout va fonctionner correctement sans intervention de notre part. Ce qui est le cas de beaucoup d'appareils qui utilisent des drivers standardisés. Mais qu'en est-il des autres appareils ainsi que des nouveautés ?
WebUSB pousse le principe du « plug and play » à un niveau supérieur en connectant les appareils aux softwares sur n'importe quelle plateforme en exploitant la puissance des technologies Web.
Par contre, WebUSB ne fournit pas un mécanisme général permettant à n'importe quelle page Web de se connecter à n'importe quel appareil USB. Cette confiance aveugle des débuts de l'USB a bien vite été la cause de diverses attaques malicieuses. Par conséquent, les périphériques USB sont associés à une « Web origin » et ne peuvent être connectés qu'à partir d'une page de la même origine. Ce qui implique que les nouveaux périphériques (ou mises à jour de firmware) doivent inclure une liste d'origines acceptables que l'agent utilisateur peut interroger, ce qui est similaire au mécanisme de CORS pour les requêtes HTTP.
Le WICG prend pour exemple les imprimantes 3D. Celles-ci ne sont pas encore vraiment supportées par les OS. Du coup, les réflexes acquis avec les imprimantes classiques ne sont pas nécessairement disponibles. WebUSB pourrait y remédier. Premièrement, un fabricant pourrait construire un logiciel de configuration directement sur son site Web. Ensuite, l'utilisateur, soi-disant surexcité (pour une imprimante 3D, ça peut se comprendre), n'aurait qu'à brancher son câble USB et être directement invité à se connecter au site Web pour poursuivre l'installation. Pour la communication proprement dite, on parle alors de Window.postMessage(), d'origines reconnues, d'iframe et de bibliothèque JavaScript.
Le but étant que WebUSB remplace le code natif et les SDK avec un support multiplateforme et des bibliothèques « web-ready ».
Quoi qu'il en soit, ce projet fait déjà débat dans la communauté anglophone ! Affaire à suivre...
La page du draft de WebUSB : https://wicg.github.io/webusb/
Et vous ?
Que pensez-vous de ce nouveau projet ?
WebUSB : une API pour connecter les appareils USB aux softwares grâce au Web
Le nouveau draft du Web Incubator Community Group
WebUSB : une API pour connecter les appareils USB aux softwares grâce au Web
Le nouveau draft du Web Incubator Community Group
Le , par vermine
Une erreur dans cette actualité ? Signalez-nous-la !