2

我有一个需要通过存储队列与 Azure C# 应用程序通信的 java 进程。
Azure Web中运行时,java 进程能够读取消息并将消息写入存储队列。
但是,当我在本地运行 java 进程并尝试与 Azure 的模拟器通信时,我可以从队列中读取消息,但无法写入队列。

下面是我使用的代码,它挂在最后一行,然后在几分钟后超时。
任何建议将不胜感激。

CloudStorageAccount acct;
if (configuration.equals(configurationTypeLocal)) {
   acct = CloudStorageAccount.parse(localStorageConnectionString);
} else {
   acct = CloudStorageAccount.parse(cloudStorageConnectionString);
}
CloudQueueClient client = acct.createCloudQueueClient();
_queue = client.getQueueReference(queueName);
_queue.createIfNotExist();
_queue.addMessage(new CloudQueueMessage(txt));
4

1 回答 1

0

使用模拟器进行开发时,确保模拟器的版本适合您正在使用的客户端库的版本非常重要。如果您使用旧版本的模拟器和更新版本的客户端库,您最终可能会遇到问题,即您请求的服务功能尚未在模拟器中实现。

鉴于您说该功能在您使用在线服务时有效,但在您使用模拟器时无效,我猜这是问题所在。下载最新版本的模拟器,你应该没问题。

杰森

于 2014-05-07T04:38:59.423 回答