【问题标题】:Azure Emulator Port conflict, app tries to connect to wrong portAzure 模拟器端口冲突,应用程序尝试连接到错误的端口
【发布时间】:2014-08-13 10:57:54
【问题描述】:

启动 Azure 存储模拟器时,由于与某些戴尔驱动程序/软件的端口冲突而失败。

我通过更改 WAStorageEmulator.exe.config 内的 StorageEmulatorConfig 部分中的 url 解决了这个问题。

<StorageEmulatorConfig>
    <services>
      <service name="Blob" url="http://127.0.0.1:10100/"/>
      <service name="Queue" url="http://127.0.0.1:10101/"/>
      <service name="Table" url="http://127.0.0.1:10102/"/>
    </services>

    <accounts.../>
  </StorageEmulatorConfig>

所以现在模拟器运行没有问题。

不过,我的 Web 应用程序仍会尝试连接到旧端口....

我使用的连接字符串是短的:

<add name="AzureStorage" connectionString="UseDevelopmentStorage=true;"/>

我也试过正常形式:

<add name="AzureStorage" 
     connectionString="DefaultEndpointsProtocol=https;
                       AccountName=devstoreaccount1;
                       AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;"/>

我的应用如何发现它应该使用哪些端点?
我如何告诉它使用另一个端口?

【问题讨论】:

    标签: azure emulation azure-storage


    【解决方案1】:

    您可以尝试在连接字符串中指定端点:

    DefaultEndpointsProtocol=http;
    AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;
    BlobEndpoint=http://127.0.0.1:10100/devstoreaccount1;
    QueueEndpoint=http://127.0.0.1:10101/devstoreaccount1;
    TableEndpoint=http://127.0.0.1:10102/devstoreaccount1;
    

    【讨论】:

    • 太棒了!但如果知道应用程序如何(或者在这种情况下,为什么不)首先发现正确的端口,那就更好了……
    • 这些默认的本地模拟器凭据可以在这里找到:msdn.microsoft.com/en-us/library/azure/hh403989.aspx(对于像我一样想知道神奇凭据来自哪里的人:)
    • 添加 @mcw0933 编辑 - 确保连接字符串中没有空格,否则您将收到“未找到有效的帐户信息组合”错误。
    猜你喜欢
    • 2016-03-27
    • 2015-12-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-02
    • 1970-01-01
    • 2021-02-14
    • 1970-01-01
    相关资源
    最近更新 更多