Nodejs是否可以通过Web应用程序读取连接设备的系统日志?

时间:2017-11-06 16:26:33

标签: android ios node.js reactjs adb

我正在寻找一种通过Web应用程序读取连接设备的系统日志的方法。基本上,我希望用户能够连接他们的iPhone,Android,平板电脑等,并能够在系统/ consoleLog级别查看他们的设备上发生了什么。与adb logcat类似。这将是一个通过Web应用程序而不是本地安装的软件。这是可行的使用react / nodejs吗?我应该考虑使用哪些技术?

2 个答案:

答案 0 :(得分:1)

实现这一目标需要几个组件。

后端

  • 文件监控(Native Node.js fs.watch
  • 实时更新(Socket.io

前端

  • 您熟悉的任何框架,我正在使用React.js与socket.io客户端

答案 1 :(得分:0)

你想要做的事情是可能的,但是在非常有限的意义上。

您的用户需要手动将其日志文件上传到您的Web应用程序。

你可以"问"他们通过在javascript中使用FileReader api来做到这一点。这是一个demo page

如您所见,您必须手动选择要上传的文件并提供网站。要以编程方式设置日志文件的路径,并尝试在没有用户注意的情况下调用它。

原因是您通过Web应用程序提供的任何内容都将在用户浏览器的沙箱中运行。

出于明显的安全原因,浏览器不允许随机网站在未经明确许可的情况下读取/写入个人电话的本地文件。

Node.js在这里不会帮到你,因为为了使用Node.js这样的功能,例如访问本地系统文件,应用程序必须在本地安装,而不是在浏览器中运行沙盒& #34;

我希望这会有所帮助。如果你想了解更多文件阅读器api的例子,请告诉我,我可以为你写一些内容。