2

这篇 MSDN 文章中,它说连接到存储帐户的连接字符串必须是HTTP 而不是 HTTPS

当我使用这个构造函数时:

public CloudDrive (
    Uri uri,
    StorageCredentials credentials
)

这是否意味着页面 blob 的Uri也必须是 HTTP 而不是 HTTPS?对于哪个参数(或两者一起)适合“连接字符串”描述,我有点困惑。

这种情况在开发模拟器中似乎不容易测试。

4

1 回答 1

1

页 blob的URI认为是连接字符串的服务器部分)表示存储帐户的命名空间 + 容器 + blobcredentials代表用户/通行证,它与 Azure 云存储服务的连接字符串一起组成URI

URI假设您使用的是本地模拟器,它将始终是 HTTP 。

CloudStorageAccount storageAccount = CloudStorageAccount.DevelopmentStorageAccount;

部署到 Azure 时,该URI方案将是您在服务配置( ServiceDefinition.csdef / ServiceConfiguration.Cloud.cscfg ) 中分配的任何内容。

CloudStorageAccount storageAccount = CloudStorageAccount.FromConfigurationSetting("CloudDrive.DataConnectionString");

您只想分配CloudDrive.DataConnectionString给 have DefaultEndpointsProtocol=http如果省略,则为默认值,但您可以是明确的)。

服务定义.csdef

<ServiceDefinition>
  <WebRole>
    <!-- .... -->
    <ConfigurationSettings>
      <Setting name="CloudDrive.DataConnectionString" />
    </ConfigurationSettings>
  </WebRole>
</ServiceDefinition>

服务配置.Cloud.cscfg

<ServiceConfiguration>
  <Role>
    <ConfigurationSettings>
     <Setting name="CloudDrive.DataConnectionString" value="DefaultEndpointsProtocol=http;AccountName=YOURNAMESPACE;AccountKey=YOURKEY" />
    </ConfigurationSettings>
  </Role>
</ServiceConfiguration>
于 2012-09-20T22:24:47.657 回答