如何在没有JS SDK的情况下通过Web客户端界面访问设备?

时间:2017-04-11 09:25:23

标签: javascript c++ node.js usb sensor

我正在使用具有USB接口的指纹扫描仪设备。该设备还具有兼容的驱动程序,以及C,C ++ ,. NET和Java的SDK

我想开发一个Web应用程序来提供用户界面而不是桌面应用程序。但是,没有提供直接的Javascript界面​​SDK。

以下方法是否正确?

实现此目的的一种可能方法可能是使用Node.js Addons

  • 设备将与C ++ SDK通信。
  • Node.js Addons将提供Node.js中运行的JavaScript与供应商提供的C / C ++ SDK之间的接口
  

扫描仪设备< - DRIVER - >< - C ++ SDK - >< - Node.js服务器 - >< - 客户端   方JS / HTML - >

谢谢!

1 个答案:

答案 0 :(得分:1)

是的,这个方法有工作应用,例如使用node.js的rc522芯片组访问RFID阅读器,请参阅https://github.com/sbrinkmann/rc522-rfid/blob/master/src/rc522.c

您必须安装node-gyp(node.js本机插件构建工具)并在连接设备的计算机上安装特定于设备的库(请参阅上面的git中的项目)

但是,可能有更简单,更通用的解决方案,不需要在目标计算机上安装特定于设备的库。这取决于指纹扫描仪实现的USB设备类

  • 如果它实现USB HID设备(通常是什么),您可以使用npm包node-hid

  • 访问其输出
  • 如果它实现了虚拟COM端口(CDC ACM类),您可以使用npm package serialport来访问其数据

  • ...

您可以通过lsusb -v | grep bDeviceClass(或lsusb -v | grep bInterfaceClass,如果在接口级别定义)或Windows上的图形工具USBView确定Linux上指纹扫描程序的USB类