在 OSX / 节点上使用 Azure Table 存储离线工作

Working Offline with Azure Table Storage on OSX / Node

我知道 Azure Storage Emulator available on Windows, however I'm wonder if anyone knows of a solution for developing against Azure Tables when using node on a Mac. I'm thinking of using the official microsoft npm package,但没有提到离线支持。

感谢您的帮助。

遗憾的是,Mac 上的离线开发不受模拟器支持。您可以使用 NetRedirector 或类似的东西在另一台机器上设置模拟器,然后从本地网络上的 Mac 访问这些端口,但这听起来可能对您的情况没有帮助。

您链接到的客户端库能够向模拟器发送请求以获得离线支持——它们在某种意义上是独立的——但模拟器需要 运行 在 Windows。

我在我的 mac 上使用 VirtualBox 运行获得了一些成功 Windows 10 虚拟 machine。我 运行 虚拟 machine 中的 Azure 存储模拟器。必要的 "tricks" 是:-

  1. 您需要在 VirtualBox(或您的其他虚拟化产品)中配置网络,以便主机和来宾 OS 可以像在同一网络上的 2 台主机一样进行通信。
  2. 在 Windows 虚拟 machine 上配置防火墙,以便它允许您需要的连接(我需要端口 10002 用于 Azure table 存储)。
  3. 编辑存储模拟器配置文件,使其绑定到您的 Mac 用来与之通信的 Windows 虚拟机的实际 IP 地址。默认情况下,它绑定到 127.0.0.1,只能由 Windows VM 上的客户端 运行ning 访问。

此外,不要忘记存储模拟器需要某种 SQL 服务器实例安装在 Windows VM 上。

这一切听起来都比实际更难,而且它在 "offline" 情况下对我有用。

Azurite 是适用于 macOS 的 Azure 存储模拟器协议的开源实现。

它应该像使用 npm install -g azurite 安装它和使用 azurite 安装 运行 一样简单。