Chrome 扩展:是否可以在文件夹上创建基于 TCP/Websocket 的服务器?
Chrome Extension: Is it possible to create a TCP/Websocket based server on a folder?
是否有任何方法可以创建托管在 127.0.0.1 的服务器,该服务器将托管 Chrome(非旧版)扩展中的文件夹?我们希望扩展在开发团队中作为一部分使用,因此我们正在寻找非旧版本。
已关注此 link:https://github.com/kzahel/web-server-chrome
它提供了有关如何启动服务器的见解。问题是,每次我们在 IP:port 启动服务器时,我们都必须手动配置文件夹路径。但是相反,我们希望扩展自己配置文件夹路径,甚至可能在 JS 文件中进行硬编码。
Are there any ways to create a server hosted at 127.0.0.1 which will host a folder from within a Chrome (non-legacy) Extension?
不,你根本不能用扩展来做到这一点。您需要一个 Chrome 应用程序才能使用 sockets
API,这是公开服务器的唯一方法。
But instead, we would want the Extension to itself configure the folder path which may even be hard-coded in the JS files.
您不能对任意本地文件的路径进行硬编码。这是一项安全功能——您必须至少请求访问一次。您可以在之后保留该条目。
但是,你提到"host a folder from within a Chrome (non-legacy) Extension"。如果您的意思是该文件夹本身是扩展(或更确切地说,应用程序)文件的一部分,那么 是 ,您可以自动获得访问权限。除了 fileSystem
API,您需要调用 chrome.runtime.getPackageDirectoryEntry()
来获取应用程序文件夹的根目录。
请注意,您只能通过这种方式获得只读访问权限。
是否有任何方法可以创建托管在 127.0.0.1 的服务器,该服务器将托管 Chrome(非旧版)扩展中的文件夹?我们希望扩展在开发团队中作为一部分使用,因此我们正在寻找非旧版本。
已关注此 link:https://github.com/kzahel/web-server-chrome 它提供了有关如何启动服务器的见解。问题是,每次我们在 IP:port 启动服务器时,我们都必须手动配置文件夹路径。但是相反,我们希望扩展自己配置文件夹路径,甚至可能在 JS 文件中进行硬编码。
Are there any ways to create a server hosted at 127.0.0.1 which will host a folder from within a Chrome (non-legacy) Extension?
不,你根本不能用扩展来做到这一点。您需要一个 Chrome 应用程序才能使用 sockets
API,这是公开服务器的唯一方法。
But instead, we would want the Extension to itself configure the folder path which may even be hard-coded in the JS files.
您不能对任意本地文件的路径进行硬编码。这是一项安全功能——您必须至少请求访问一次。您可以在之后保留该条目。
但是,你提到"host a folder from within a Chrome (non-legacy) Extension"。如果您的意思是该文件夹本身是扩展(或更确切地说,应用程序)文件的一部分,那么 是 ,您可以自动获得访问权限。除了 fileSystem
API,您需要调用 chrome.runtime.getPackageDirectoryEntry()
来获取应用程序文件夹的根目录。
请注意,您只能通过这种方式获得只读访问权限。