Articles of 天青

从Azurefunction提供HTML文件时出错

我正尝试使用Azure函数打开,读取并返回一个HTML文件。 我在本地开发和日志说,function成功执行,但在浏览器中,我得到500内部服务器错误。 我在这里做错了什么? const fs = require('fs'); const path = require('path'); const mime = require('../node_modules/mime-types'); module.exports = function (context, req) { const staticFilesFolder = 'www/build/'; const defaultPage = 'index.html'; getFile(context, req.query.file); function getFile(context, file) { const homeLocation = process.env["HOME"]; if(!file || file == null || file === undefined){ context.done(null,{status:200,body:"<h1>Define a file</h1>",headers:{ "Content-Type":" text/html; charset=utf-8" }}); […]

Azure存储表查询 – 结果与响应

我使用node.js作为我的服务器,并在我的存储表所在的Azure上拥有一个帐户。 我正在使用以下方法检索特定分区的所有logging: var query= new azure.TableQuery().where('PartitionKey eq ?',username); tableSvc.queryEntities(localTableName,query, null, function(error, result, response) { } 当这个调用返回时,我想访问表的其余部分的值。 但是,当我使用result.entries这样做,它看起来有点怪异。 或者我想我可以通过response.body.value.userID访问结果。 下面是“result.entries”和“response”对象的结构: result.entries : [ { PartitionKey: { '$': 'Edm.String', _: '048tfbne' }, RowKey: { '$': 'Edm.String', _: '145610564488450166' }, Timestamp: { '$': 'Edm.DateTime', _: Mon Feb 22 2016 01:47:26 GMT+0000 (UTC) }, username: { _: '048tfbne' }, […]

如何在不保存本地的情况下将base64数据转换为可读的图像stream

我正在使用Node.js处理Microsoft Bot Framework(在Azure上托pipe),本地保存文件不是一个选项。 我有base64格式的图像数据,我需要将这些数据转换成一个可读的图像文件stream,我可以使用它们的Blob存储API(需要一个stream)将其传输到Azure中。 var base64ImageData; //my base64 image //Create myStream here //Then send to Azure blobService.createBlockBlobFromStream('mycontainer', nameForBlob, myStream, fileSize, function (error, result, response){ if(!error) console.log(response); else console.log(error) }); 任何帮助,将不胜感激。 我无法弄清楚如何解码base64,并从中创build一个stream,而不会将jpg保存到我的磁盘上。

如何调用多个API在节点js中同步

var Connection = require('tedious').Connection; var Request = require('tedious').Request; var config = { userName: 'XXXX', password: 'XXXX', server: 'XXXX', options: { database: 'XXXX', encrypt: true } } var connection = new Connection(config); connection.on('connect', function (err) { if (err) { console.log(err); } else { // // queryDatabase(); } } ); 如何调用“连接”同步并继续代码的顺序stream程。 由于代码的asynchronous执行,代码中存在巨大的链接。 在js节点中实现代码的顺序执行的最好方法是什么? 我find了一些图书馆https://www.npmjs.com/package/sync ,但不认为用于生产目的。

最轻的Node.js Linux发行版

什么是Node.js的超轻型Linux发行版 没有GUI,只是bash。 计划运行Azure Extra Small VM实例。 共享CPU核心,768MB内存。

Nodejs Azure Rediscaching永远挂起并读取ECONNRESET错误

我创build了一个新的Azure Rediscaching,需要将近5分钟才能完成创build。 我正在使用node-redis包,这是我的代码 var client = redis.createClient( process.env.REDIS_PORT || 6379, process.env.REDIS_HOST || '127.0.0.1' ); if(process.env.REDIS_HOST) { client.auth(process.env.REDIS_KEY); } 是的,这些环境variables是正确设置,它只是挂了一段时间,并提出一个错误:Redis连接到mycache.redis.cache.windows.net:6380失败 – 读ECONNRESET。 现在,当我使用redis-cli尝试连接redis-cli -h myhost -p 6380 -a the-auth-key它只是挂在命令行上,似乎没有连接build立,但也没有错误。 这只是无所事事。 如果我改变端口等,我得到连接错误。 所以我现在想知道我在做什么错了? 我在另外一个地区创build了另一个rediscaching(我花了最大的99.9 SLA等)。 不过,没有连接是可能的。 任何帮助,将不胜感激。

处理消息队列和使用asynchronous

我写了一个小的testing节点应用程序,循环并将消息添加到队列(azure色的存储队列),如下所示: var queueService = azure.createQueueService(); var queueName = 'taskqueue'; // other stuff like check if created // loop called after queue is confirmed for (i=0;i<1000;i++){ queueService.createMessage(queueName, "Hello world!", null, messageCreated); } // messageCreated does nothing at the moment, just logs to console 我试图重写,以处理说100万创build使用asynchronous来控制并行运行的工作者函数的数量。 这比任何事情都是一个学习练习。 https://github.com/caolan/async#queue 这是asynchronous队列的基本设置,对于我需要更改的内容,我感到不知所措。 我不认为下面的工作: var q = async.queue(function (task, callback) { queueService.createMessage(queueName, […]

Node.js与Google App引擎

我已经看了谷歌的以下链接 Node.js a和App Engine 我不明白App Engine和Node.js在缩放方面有什么不同。 关于链接,它是使用socket.io。 但为什么不使用Node.js呢? 在Windows Azure上,您可以在IIS线程上运行Node.js。 但是,我不明白,为什么你会需要App Engine / IIS层,如果Node.js是在缩放? 关于数据存储,我已经读过,您可以从Node.js计算引擎访问的数据存储与您在App Engine中使用的数据存储相同。 非常感谢谢谢

使用Node SDK从图像创buildazure色虚拟机

我正尝试使用azure sdk( azure-sdk-for-node )创build一个基于我已经保存的映像的虚拟机。 我也已经创build了这个服务。 这是我得到的: // Create a virtual machine in the cloud service. computeManagementClient.virtualMachines.createDeployment('prerender-pro', { name: "prerender-pro", deploymentSlot: "Production", label: "for heavy duty caching", roles: [{ roleName: "prerender-pro", roleType: "PersistentVMRole", label: "for heavy duty caching", oSVirtualHardDisk: { sourceImageName: "prerender-os-2014-07-16", mediaLink: "https://XXXXXXX.blob.core.windows.net/vhds/prerender-os-2014-07-16.vhd" }, dataVirtualHardDisks: [], configurationSets: [{ configurationSetType: "LinuxProvisioningConfiguration", adminUserName: "Blah", adminPassword: "Blahblah2014!", computerName: […]

如何整合与Microsoft Azure的持续集成

我正在开发一个Node.js应用程序,但是我手动在Azure虚拟机(Ubuntu)中部署这个应用程序。 我想从特定的GitHub分支(主)部署到虚拟机,我可以使用Appveyor?