Windows Azure Servicebus令牌提供程序无法提供令牌,但返回了一条空消息
本文关键字:令牌 返回 一条 消息 Servicebus Azure 程序 Windows | 更新日期: 2023-09-27 18:28:52
当尝试从Servicebus队列接收消息时,会引发关于令牌提供程序的异常:
令牌提供程序在访问"时无法提供安全令牌https://xyz-sb.accesscontrol.windows.net/WRAPv0.9/"。令牌提供程序返回消息:"。
只有当我的颁发者和密钥正确时才会发生这种情况。当它们不正确时,令牌提供程序会返回一条消息,描述错误之处。我会把代码添加到帖子中,直到出现错误:
string user = ConfigurationManager.AppSettings["ServiceBusUser"];
string key = ConfigurationManager.AppSettings["ServiceBusSecret"];
TransportClientEndpointBehavior securityBehaviour = new TransportClientEndpointBehavior(TokenProvider.CreateSharedSecretTokenProvider(user, key));
Uri uri = ServiceBusEnvironment.CreateServiceUri("sb", "xyz", queue);
Uri deadUri = ServiceBusEnvironment.CreateServiceUri("sb", "xyz", queue + "/$DeadLetterQueue");
if (readDeadly && allIsWell)
{
IChannelListener<IInputChannel> deadChannelListener = messagingBinding.BuildChannelListener<IInputChannel>(deadUri, securityBehaviour);
deadChannelListener.Open();
IInputChannel deadInputChannel = deadChannelListener.AcceptChannel();
deadInputChannel.Open();
while (readDeadly && allIsWell)
{
FlexilineLogger.Log(logpath, "readDeadly");
try
{
try
{
queueMessage = deadInputChannel.Receive(TimeSpan.FromSeconds(10));
并且异常发生在接收端。这在昨天起到了很好的作用,但今天它继续抛出上面的例外。
有没有其他人遇到过这种情况,也许知道出现这种异常的原因?或者有人有这个问题的解决方案并愿意分享吗?
谢谢。
http://blogs.msdn.com/b/piyushjo/archive/2011/09/27/azure-service-bus-working-with-the-appfabriclabs-account.aspx
似乎是答案,尽管我正试图弄清楚如何在工人的角色中做到这一点。