Node.js 调用azure.createQueueService()时出错
我正在测试一些关于node和azure的代码。根据代码片段@Node.js 调用azure.createQueueService()时出错,node.js,azure,Node.js,Azure,我正在测试一些关于node和azure的代码。根据代码片段@ 在我的代码中,我尝试:- var AZURE = require('azure'); function TestQueue(QueueName) { var queueService = AZURE.createQueueService(); // error occurred at this line queueService.createQueueIfNotExists(QueueName, function
在我的代码中,我尝试:-
var AZURE = require('azure');
function TestQueue(QueueName)
{
var queueService = AZURE.createQueueService(); // error occurred at this line
queueService.createQueueIfNotExists(QueueName, function(error){
if(!error)
{
console.log("ok");
RESPONSE.send(200, { Message: "ok", Status: "ok" });
}
else
{
console.log("error: "+error);
RESPONSE.send(200, { Message: "error", Status: "error" });
}
});
}
错误消息:-
NoMatchError:提供的设置{“blobendpoint”:“”“tableendpoint”:“”“queueendpoint”:“”}
这是不完整的
问题是如何创造
排队服务
顺便说一下,下面的代码
干得好。但这对我来说还不够。我还需要排队服务
var AZURE = require('azure');
var SERVICEB_BUS_SERVICE = AZURE.createServiceBusService();
function createQueue(queueName)
{
SERVICEB_BUS_SERVICE.createQueueIfNotExists(queueName, function(error){
if(!error){
console.log('%s queue created or exist: ',queueName );
RESPONSE.send(200, { Message: "ok", Status: "ok" })
}
else
{
console.log('%s queue creation error.',queuename );
RESPONSE.send(200, { Message: "error", Status: "error" })
}
})
}
基本上,您得到这个错误是因为没有指定帐户名/密钥。试着这样做:
var AZURE = require('azure');
TestQueue('testqueue1');
function TestQueue(QueueName)
{
var queueService = AZURE.createQueueService('accountname', 'accountkey'); // error occurred at this line
queueService.createQueueIfNotExists(QueueName, function(error){
if(!error)
{
console.log("ok");
}
else
{
console.log("error: "+error);
}
});
}
我消除了以前的错误。但出现新错误:服务器无法验证请求。确保包括签名在内的授权标头的值格式正确。请求ID:f0cb9b35-e540-41e9-87ae-1311c5e320b0时间:2014-02-13T12:19:41.6685088Z。我从一个自定义api调用这个方法,该api配置为只能调用经过身份验证的用户。在我打电话之前,我会进行身份验证。我对参数“accountname”、“accountkey”不感兴趣。我刚刚尝试了accountname=“servicebus name”accountkey=“DEFAULT KEY”。您能告诉我应该是什么吗?您必须从Windows Azure门户获取存储帐户名和密钥。此队列不同于服务总线队列。您可能会发现此链接对于比较这两个名称很有用。实际上,我是在尝试遵循这一点时发现的,这里提到了var queueService=azure.createQueueService();正如您所看到的,创建服务总线队列的代码在尝试装箱queueService时出错。不能怪您:)。该示例讨论存储队列。所以问题是-您想创建存储队列还是服务总线队列?我回答中的代码示例将创建一个存储队列,而您问题中的第二个代码示例将用于服务总线队列。我需要服务总线队列。我需要此调用才能工作var queueService=azure.createQueueService();这样我就可以使用queueService.peekMessages()
var AZURE = require('azure');
TestQueue('testqueue1');
function TestQueue(QueueName)
{
var queueService = AZURE.createQueueService('accountname', 'accountkey'); // error occurred at this line
queueService.createQueueIfNotExists(QueueName, function(error){
if(!error)
{
console.log("ok");
}
else
{
console.log("error: "+error);
}
});
}