我在尝试通过 java azure sdk 向服务总线主题发送消息时遇到问题,收到 500 内部服务器错误。
我根据此链接准备了代码:https://azure.microsoft.com/en-us/documentation/articles/service-bus-java-how-to-use-topics-subscriptions/我的代码如下所示:
Configuration config = ServiceBusConfiguration.configureWithSASAuthentication(
"NAMESPACE",
"SAS_NAME",
"SAS_KEY_VALUE",
".servicebus.windows.net");
ServiceBusContract service = ServiceBusService.create(config);
try {
BrokeredMessage message = new BrokeredMessage("Message content");
service.sendTopicMessage("TOPIC_NAME", message);
} catch (ServiceException e) {
e.printStackTrace();
}
我能够使用 .NET 代码发送具有相同配置值的消息。
这是我收到的异常:“com.sun.jersey.api.client.UniformInterfaceException:POST https://NAMESPACE.servicebus.windows.net/TOPIC_NAME/messages?api-version=2013-07 返回了 500 内部服务器错误的响应状态”
我还有一个关于 api 版本的问题。为什么图书馆在请求中放入如此旧的 api 版本?我使用 maven 存储库中的最新版本的 azure sdk:
<dependency>
<groupId>com.microsoft.azure</groupId>
<artifactId>azure-servicebus</artifactId>
<version>0.9.3</version>
</dependency>
最佳答案
我尝试重现您的问题,但未能获取任何错误信息。
根据 REST API “Send Message” ,500状态代码表示不是由您的客户端源代码引起的内部错误。
所以我认为你可以尝试再次运行代码。
如果您仍然遇到相同的错误或其他错误,您能否分享更多信息来帮助分析问题?
如有任何疑问,请随时告诉我。
关于java - 通过 Azure Java SDK 向服务总线主题发送消息时出现 500 内部服务器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36842057/