为什么dart.io等只能在命令行应用程序中使用?

app*_*orc 2 libvirt google-chrome-extension dart dart-io

我想从dart程序中使用libvirt api.这是doc https://www.dartlang.org/articles/native-extensions-for-standalone-dart-vm/.但是我发现它只能在dart命令行app中使用,所以dart.io也是如此.我不熟悉Web应用程序,我想知道为什么会发生这种情况以及为什么我们无法在Web应用程序中调用系统API.这是不可能的还是有其他技巧可以完成这项工作?

编辑:如果我真的想写一个在系统中调用libvirt c api的web应用程序,我该怎么办?对于第一个,我可以编写一个后端服务器来为web应用程序提供api(可能是REST).但是,如果我不想拥有服务器后端,并且可以从chrome扩展访问libvirt api.我看到chrome扩展可以作为后台应用运行,我认为可能不是网络应用.

Gün*_*uer 6

Web应用程序在浏览器中运行,无法直接访问系统,这就是dart:io的用途.如果任意网站可以访问您的本地文件系统/网络/ ...,这将是一个严重的安全问题.这不是Dart限制.