Articles of azure

在webpack + nodejs中使用azure应用程序服务,无需长时间部署中断

我试图用我的(相当大的)NodeJS应用程序使用webpack,使用Git连续部署作为Windows Azure应用程序服务部署。 我定制了我的kudu deploy.sh脚本来运行webpack,但是在Azure App Service上需要花费几分钟的时间才能运行,并且在这段时间内应用程序不可用。 在我的开发笔记本电脑上,运行webpack只需要大约30秒(我可以接受作为部署中断时间),但我猜测使用SSD的笔记本电脑使这个运行速度更快? 如果我使用的是一个部署脚本,我只需要在我的开发机器上运行这个webpack并把结果推送到服务器上,但是我使用git进行连续部署,而且我不想提交不断变化的webpack-生成的代码到Git仓库。 有没有办法在Azure应用程序服务基NodeJS应用程序运行webpack-on-deploy部署时没有这么大的停机时间?

如何在azure-mobile-apps-js-client中使用substringof

我想使用azure-mobile-apps-js-client的odata substringof方法。 目前我使用indexof方法,但想切换到substringof。 我有这个代码 function queryFunction(term){ return this.FullName.indexOf(term) != -1 } table.where(queryFunction, term) 转化为 $filter=indexof(FullName, term) ne -1 我需要这样的URL: filter=substringof(term, FullName) eq true 我如何做到这一点与JavaScript?

如何阻止Azure DocumentDB Emulator将本地主机redirect到HTTPS?

每当我启动它,它会发送一个HSTS头 ,这意味着每个请求现在从http://localhostredirect到https://localhost 。 在使用node.js进行本地开发时,这是一个PITA。 有没有办法阻止它这样做?

端口在IISNode上运行的Azure Node.js应用程序中未定义

我有一个使用IISNode运行Node.js应用程序的Azure应用程序服务。 问题是process.env.PORT是未定义的。 我已经读过IISNode使用一个叫做命名pipe道的东西,并且端口信息可能不易读(?),但是在我的情况下,我只能得到未定义的信息。 我尝试部署的项目可以从GitHubfind 。 我有一个Web.config文件定义,它看起来像这样: <handlers> <!– indicates that the app.js file is a node.js application to be handled by the iisnode module –> <add name="iisnode" path="index.js" verb="*" modules="iisnode" /> </handlers> <rewrite> <rules> <!– Don't interfere with requests for node-inspector debugging –> <rule name="NodeInspector" patternSyntax="ECMAScript" stopProcessing="true"> <match url="^index.js\/debug[\/]?" /> </rule> <!– First we consider […]

如何从Azure容器获取文件夹列表?

我想要在nodejs中的所有文件夹和文件在一个azure色的容器中 我正在使用azure存储库获取blob,但无法find任何示例来列出容器下的所有文件夹。 我在auzure中倾销(出口)我的anaylitics数据到存储容器。 现在我试图阅读这些文件 我的存储结构像 ios-analytics-full/ios_06cd82e4db0845b9bef73c5b22bea2fa/Event/2016-09-29/18/270b58c-04d7-4e5d-a503-cdce24a3940c_20160929_184723.blob 我想读取为每一天创build的所有文件夹和这些文件夹下的文件 var containerName = "assist-ios-analytics-full"; blobService.listBlobsSegmented(containerName, null, {maxResults : 10}, function(err, result) { if (err) { console.log("Couldn't list blobs for container %s", containerName); console.error(err); } else { console.log('Successfully listed blobs for container %s', containerName); console.log(result.entries); console.log(result.continuationToken); res.json(result); } }); 最新的文件夹将是今天的date ios-analytics-full/ios_06cd82e4db0845b9bef73c5b22bea2fa/Event/2017-05-31/18/270b58c-04d7-4e5d-a503-cdce24a3940c_20160929_184723.blob

对node.js中的Azure Log Analytics授权标头进行编码/encryption

我一直试图让日志收集器API工作在一个node.js Azurefunction,但坚持403 /禁止错误,这表明我没有正确地形成授权头。 完整的代码在这里是一个github仓库: https://github.com/sportsmgmt-labs/Azure-Log-Analytics-Node-Function Data Collector API文档位于以下位置: https://docs.microsoft.com/en-us/azure/log-analytics/log-analytics-data-collector-api 授权标题应格式化如下: 授权:SharedKey {WorkspaceID}:{签名} 签名是这样编码/encryption的: Base64编码(HMAC-SHA256(UTF8(StringToSign))) 这是我创build授权标头的代码: var contentLength = Buffer.byteLength(req.body['log-entry'], 'utf8'); var authorization = 'POST\n' + contentLength + '\napplication/json\nx-ms-date:' + processingDate + '\n/api/logs'; // encode string using Base64(HMAC-SHA256(UTF8(StringToSign))) authorization = crypto.createHmac('sha256', sharedKey).update(authorization.toString('utf8')).digest('base64'); authorization = 'Authorization: SharedKey ' + workspaceId + ':' + authorization; 服务器的响应是: {“错误”:“InvalidAuthorization”,“Message”:“授权标头中指定了无效的scheme”} 有人能帮我理解我在做什么错吗? […]

Bad handshake或ECONNRESET Azure Mysql Nodejs

已经有类似的报道,但是我不能解决这个问题。 我有一个express.js应用程序使用KNEX连接到Azure托pipe的MySQL数据库。 我可以完全从控制台命令或MySQL工作台连接到数据库。 但是,没有办法从我的节点应用程序实现相同。 我的连接对象是相同的: config.knex = require('knex')({ client: 'mysql', connection: { host: 'wineserver.mysql.database.azure.com', user: 'BurgerAndGreenBeans@wineserver', password: 'FromageDeChevre', database: 'gdpr', insecureAuth: true }, pool: { min: 0 }, debug: ['ComQueryPacket'] }); 每次我启动应用程序,我得到一个错误或另一个: #1 Unhandled rejection Error: read ECONNRESET at exports._errnoException (util.js:1050:11) at TCP.onread (net.js:582:26) ——————– at Protocol._enqueue (C:\Projects\gdpr\node_modules\mysql\lib\protocol\Protocol.js:141:48) at Protocol.handshake (C:\Projects\gdpr\node_modules\mysql\lib\protocol\Protocol.js:52:41) at Connection.connect (C:\Projects\gdpr\node_modules\mysql\lib\Connection.js:130:18) at […]

Azure中的SQL Query DocumentDB由整数不起作用的函数

我在Azure函数中使用JavaScript语言。 当使用Cosmos DB作为input时,我无法通过整数作为variables来查询。 例如,我有以下几点: 使用Azure Cosmos DB作为我的input(公司)的function设置。 这是设置分区键为{partitionKey}和我的SQL查询作为SELECT * FROM c where c.random = {randomId} 。 在函数的代码中,我发送了以下作为我的testing数据: { "randomId": 1, "partitionKey": "prospect" } 有了这个,我没有得到任何结果。 我已经证实,我有一个random值为1的对象。 如果我要random添加一个值为"1" ,那么以下内容将起作用: { "randomId": "1", "partitionKey": "prospect" } 我已经用DocumentDB API和MongoDB API尝试了这个,因为这个绑定是内置到Azure函数中的,所以不要紧。 我用不同的数据集看到的趋势是,当您将整数参数绑定到查询或文档ID字段中时,查询不起作用。 任何想法如何解决这一问题? 编辑: 我已经证实这在C#中可用的文档。

尝试从DocumentDb中删除文档时发生错误的请求错误

当我尝试从nodejs应用程序中的DocumentDb中删除一个文档时,它给出了以下错误的请求错误。 {“code”:“BadRequest”,“message”:“Message:{\”Errors \“:[\ xml-partition-key头中提供的分区键比在集合中定义的分量要less。] } \ r \ nActivityId:fe385556-c91b-49a6-88ca-728a807b64ad,请求URI:/ apps / 63e70998-1c00-470e-8093-b4ef0dac16b1 / services / 2f865af8-4b67-4b6f-9919-9caf5a78d60c / partitions / 75008c63-10a3- 4ad3-85b7-d22883819270 /副本/ 131467476052794282p“} DBHandler.prototype.removeItem = function(item,callback){ this.client.deleteDocument(item._self, item, function(err, doc){ if (err) { LogUtils.error("DBHandler.removeItem "+err.body); } else { callback(null, "success remove Item"); } }); }

CosmosDB – 以编程方式查询消耗的RU / s?

我试图得到关于消费RU /第二集合水平的信息 ,不幸的是,当我查询与node.js documentdb模块的集合信息,与代码 var client = new DocumentDBClient(host, { masterKey: masterKey }); client.readCollection(collection._self, function(err, item) { if (err) { console.log(err); } else { console.log(item); } }); 我只获得如下的基本信息 { id: 'myCollection', indexingPolicy: { indexingMode: 'consistent', automatic: true, includedPaths: [ [Object] ], excludedPaths: [] }, _rid: 'ku8SANRCfwA=', _ts: 1505295711, _self: 'dbs/ku8SAA==/colls/ku8SANRCfwA=/', _etag: '"00008b00-0000-0000-0000-59b8fd5f0000"', _docs: 'docs/', _sprocs: […]