Azure存储返回“;无法连接到服务器";
尝试使用Azure存储API获取容器引用时收到错误 我可以从Visual Studio中的服务器资源管理器连接到我的Azure存储帐户。我还可以使用以下代码从我编写的测试C#客户端进行连接:Azure存储返回“;无法连接到服务器";,azure,asp.net-web-api,azure-storage,Azure,Asp.net Web Api,Azure Storage,尝试使用Azure存储API获取容器引用时收到错误 我可以从Visual Studio中的服务器资源管理器连接到我的Azure存储帐户。我还可以使用以下代码从我编写的测试C#客户端进行连接: StorageCredentialsAccountAndKey credentials = new StorageCredentialsAccountAndKey("ACCOUNT", "XXXX") CloudStorageAccount account = new CloudStorageAccount
StorageCredentialsAccountAndKey credentials = new StorageCredentialsAccountAndKey("ACCOUNT", "XXXX")
CloudStorageAccount account = new CloudStorageAccount(credentials, true);
CloudBlobClient blobClient = account.CreateCloudBlobClient();
CloudBlobContainer container = blobClient.GetContainerReference(name);
container.CreateIfNotExist();
我创建了一个ASP.NET MVC(Web API)应用程序,并使用IIS Express托管它。我在一个web方法中放入了与上面相同的代码,当我从客户机调用这个方法时,它不起作用。它到达最后一行CreateIfNotExist(),等待几分钟,并抛出System.Net.WebException错误,表示“无法连接到远程服务器”。。。“无法建立连接,因为目标计算机主动拒绝168.63.33.206:443”
我觉得很奇怪,我可以通过其他方法连接,但在使用本地web应用程序时却不能。有人能帮忙吗?我已经上网了,但找不到任何人有同样的问题或一个像样的解决方案
非常感谢。我对IIS Express不太熟悉,但根据我的发现 “主动拒绝”表示主机在您尝试连接时发送了重置而不是ack。因此,这在代码中不是问题。防火墙阻止了连接,或者承载服务的进程没有在该端口上侦听,这可能是因为它根本没有运行,或者是因为它正在另一个端口上侦听。一旦启动托管服务的进程,请尝试netstat-anb(需要管理员权限)来验证它是否正在运行并侦听预期端口 从本帖: 而且 默认情况下,IIS Express仅限于响应本地主机的请求 从本博客:
SO帖子或博客可能会帮助您解决问题。欢迎使用堆栈溢出。我可能错了,但这里的实际问题似乎不是代码,而是一些配置错误。请看一下这些文件。不,这不是代码,这是问题所在。我只是想知道是否有人对可能出现的问题有任何建议-例如,网络防火墙(不太可能,因为它正在通过服务器资源管理器工作)代理(同样不太可能,因为同样的原因),一些我不知道的Azure配置,身份验证机制等。您是否打开了使用.NET存储客户端库的客户端日志记录,这可能会给你更多关于发生了什么的细节。你找到解决办法了吗?我也收到了同样的问题-(嗨,Michael,谢谢你的反馈,这似乎是某种网络/防火墙问题,因为我在家里而不是通过公司网络尝试了相同的代码,效果很好。我们的it人员不会看它,所以我无法确定错误。我将继续努力。非常感谢。