Articles of azure mobile services

缺lessserver.js / app.js文件,web.config不会生成

我正在使用Windows Azure Mobile Services的源代码pipe理function来推送自定义API脚本。 我做了什么: 克隆git仓库。 (它包含了一堆用readme.md文件解释什么地方的目录,以及一些现有表的权限的configuration文件。) 添加了service/api/test.js和service/api/test.json文件(自定义API脚本和configuration)。 承诺并将更改推送到远程。 我从git获得了以下输出: remote: Updating branch 'master'. remote: Updating submodules. remote: Preparing deployment for commit id '1cbfbd5ac1'. remote: Running custom deployment command… remote: Running deployment command… remote: Handling Basic Web Site deployment. remote: KuduSync.NET from: 'D:\home\site\repository\service' to: 'D:\home\site\wwwroot\App_Data\config\scripts' remote: Copying file: 'api\test.js' remote: Copying file: 'api\test.json' remote: Missing […]

如何从移动服务中“唤醒”Azure webjob?

比方说,我有一个configuration为单身的Azure webjob,并在自由站点上下文中“连续”运行。 根据Azure规范 ,在开始一段时间之后,webjob会closures,除非有人继续运行: 截至2014年3月,如果没有对scm(部署)站点的请求,且网站的门户在Azure中未打开,则处于Free模式的网站可能会在20分钟后超时。 请求到实际的网站不会重置这个。 不过,这对我来说很好。 我的目标是在调用移动服务自定义API时“唤醒”webjob实例,如下面的基本示例: exports.post = function(request, response) { //ensure the webjob running, in case wake it up var rq = require('request'); rq("http:// ??? (any site to invoke?) ", function(error, response, body) { //do nothing }); //do specific stuffs related to the mobile service var rtn = { message : 'Hello […]

Azure移动服务(节点后端)__updatedAt属性编辑后不会自动设置

阅读完文档后,我期待这个字段是由Azure移动服务自动设置的。 显然不是。 我应该configuration额外的东西吗? 我看到的其他选项(为每个表):*添加一个axtra线到节点js update(item,user,request)函数:item .__ updatedAt = new Date(); *在数据库中创build一个更新触发器 任何人都有这个经验? 谢谢!

cc的SendGrid不能在Azure移动应用程序中工作

只有下面的语法似乎在Azure移动应用程序中工作,这里解释https://azure.microsoft.com/en-us/documentation/articles/store-sendgrid-mobile-services-send-email-scripts/#comment- 2539027195 sendgrid.send({to:' email-address ',from:' from-address ',subject:'New to-do item',text:'一个新的待办事项被添加:'+ item.text},函数(成功,消息){if(!success){console.error(message);}}); 从上面可以看出,callback函数传递了成功参数,而GitHub( https://github.com/sendgrid/sendgrid-nodejs )中的node.js模块却有错误参数。 所以看起来Azure移动服务不是使用相同的模块或版本,也有一些断开连接。 sendgrid.send(email,function(err,message){if(err){console.error(message);}});

本地testingAzure Mobile Auth – 无效的jwt签名

我正在玩一个Azure移动应用程序后端(nodeJS),正如这里所讨论的。 我一直在使用默认的网页设置configuration开发我的移动应用程序,但是现在我想定制云端后端function,所以我已经使用Azure-Mobile-Apps SDK创build了一个本地后端。 我使用我的移动应用程序(使用Azure客户端SDK的授权方面)login,然后捕获AuthToken。 然后我构造了一个邮递员HTTP POST请求,这些标题: ZUMO-API-VERSION = 2.0.0 x-zumo-auth = eyJ0eX000000000000000000000000000000.eyJ000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.000000000000-000000000_00000_00000 注意:我的tokenm实际上并不包含所有这些零,它看起来像一个有效的标记。 但是,POST请求的响应是: {“name”:“JsonWebTokenError”,“message”:“无效签名”} 我以为这可能是因为身份validation令牌是由不同的服务(默认后端,而不是我的项目在本地主机上运行)生成的。 于是我用localhost初始化了一个客户端,并试图用它进行身份validation,但是我得到了: JS:错误login! 错误:未使用所选身份validation提供程序login铬:[INFO:CONSOLE(12)]“不允许加载本地资源:file:///android_asset/webkit/android-weberror.png”,source:data: text / html,chromewebdata(12) 更新: 我从https://myApp.scm.azurewebsites.net/Env.cshtmlfind了我的WEBSITE_AUTH_SIGNING_KEY,并将其添加到我的azureMobile.js file ,该azureMobile.js file位于与我的app.js文件相同的目录中。 它看起来像这样: console.log("Test"); module.exports = { cors: { origins: ['localhost'] }, data: { provider: 'mssql', server: '127.0.0.1', database: 'mytestdatabase', user: 'localDemo', password: 'myPassword' }, logging: { level: 'verbose' }, […]

将sql对象转换为node.js中有效的Jsonstring – Azure

我们使用node.js在Azure服务中创build一个Web服务,以从SQL数据库中检索数据。 我们使用ClearDB来做同样的事情。 在回顾数据时,它没有以合适的JSON格式提交。 我们如何将结果sql对象转换为JSONstring。 以下是我的代码。 app.get('/android', function(request, response) { pool.getConnection(function(err, connection) { if(err) { handleErrorResponse(err, response); return; } var sql = "select projectname from taggedemployee where empname='test@hotmail.com' and tagflag='accepted'" connection.query(sql, {}, function(err, results) { connection.release(); // always put connection back in pool after last query if(err) { handleErrorResponse(err, response); return; } var proj = JSON.stringify(results); […]

在node.js中运行多个MSSQL查询

我正在尝试运行多个SQL查询。 问题在于,variables由于fire.and忘记node.js使用继续超出范围。 我正在努力解决如何做类似于在C#中的await关键字。 这是我破碎的代码,是这样的; 这应该让我更清楚我想要达到的目标: function getTopicsForMessages(request, results) { //Get topics for this message var queryString = "SELECT ripple_messenger.TopicTypes.name, ripple_messenger.TopicTypes.imageUri"; queryString += " FROM ripple_messenger.MessageTopics JOIN ripple_messenger.TopicTypes"; queryString += " ON (ripple_messenger.MessageTopics.topicId = ripple_messenger.TopicTypes.id)"; queryString += " WHERE messageId = ?"; for (var i = 0; i < results.length; i++) { mssql.query(queryString, [results[i].id], { success: […]

移动服务+ DocumentDB附件

这是我的堆栈: iOS和Android应用程序 DocumentDB 由Javascript支持的移动服务 由Javascript支持的Azure站点 我正在做的是从我们的应用程序中抽象出DocumentDB的知识,因为我们正在构build白色标签解决scheme,而且我们可能需要即时扩展DocumentDB实例。 使用抽象types的服务,我们基本上可以根据从应用程序发送的某些数据来分割我们的docdb实例。 现在这将包括2个我想要创build移动服务的操作。 一个获取JSON数据,另一个获取与文档关联的附件。 这是我的麻烦所在。 我有一个只能在NodeJS中部署的传递服务。 我喜欢与移动服务相关的安全模型,所以我想调整我的代码。 问题在于将DocDB响应传递给移动服务响应。 首先是移动服务默认标题试图设置和失败,所以我暂时覆盖该function。 现在移动服务从不响应,直到发生超时。 这是一个代码片段: exports.get = function (req, res) { … // .then().fail() always pushed into the fail() block, but if I use the 2 function in .then() way it works. client.readMediaAsync(mediaUrl).then( // Success function (media) { // Set up caching and proxy […]

Azure应用程序服务的共享代码(移动应用程序)

所以,Parse关机让我急于为正在发布的应用程序find合适的备份计划。 我一直在考虑将Microsoft Azure作为替代品,并开始使用Azure移动服务进行testing。 实际上这样做很好,但是我一直注意到很多这样的消息: 注:这是一个Azure移动服务主题。 Microsoft Azure推荐Azure App Service移动应用程序用于所有新的移动后端部署。 要开始使用Azure App Service移动应用程序,请参阅应用程序服务移动应用程序文档中心。 好的,我一直在寻找应用服务。 我已经阅读了很多文档,有时可能会造成混淆,因为有些链接似乎没有指向正确的“版本”。 有时,“应用程序服务”链接最终将出现在“移动服务”文章中。 他们的名字很接近,可能会令人困惑和沮丧。 但承诺如下: 移动应用程序是App Service中的新应用程序types,它集成了移动服务等所有function。 移动应用程序正在公开预览。 无论如何,对于移动服务来说,有一点是很难find的,而且到目前为止,已经certificate不可能find应用服务,这与共享代码有关。 一个重要的原因是,在Azure门户(旧的或新的)中看起来没有真正的共享代码,更不用说他们的在线编辑器。 我无法看到在我的自定义应用程序服务API中应该如何或在哪种代码。 例如,下面是使用WebStorm通过Git检出项目结构的比较: 移动服务项目结构 应用服务项目结构 现在,当我查看App Services项目中的app.js文件时,我看到以下几行代码: // Import the files from the tables directory to configure the /tables endpoint mobile.tables.import('./tables'); // Import the files from the api directory to configure the /api endpoint […]

使用Azure移动服务计划任务访问Azure服务pipe理REST API

我目前正在使用Azure移动服务中的计划任务来完成以下项目(如果可能的话): 更新云服务部署configuration,使云服务进入维护模式。 等待预定的时间,以完成云服务中的任何待处理的工作。 执行云服务使用的SQL Azure数据库的备份。 等待另一个预定的时间长度以完成备份。 更新云服务部署configuration,使云服务退出维护模式。 我已经find了第3步,步骤2和4是相对微不足道的补充。 我的挂断是使用Azure服务pipe理REST Api 更新云服务部署configuration 。 (我在Node.js脚本中没有遇到过其他的方法) 。 使用提供的Node.js模块请求 (例如: http : //msdn.microsoft.com/en-us/library/windowsazure/jj631641.aspx )对端点的调用非常简单,但请求必须包含pipe理证书每http://msdn.microsoft.com/en-us/library/windowsazure/ee460782.aspx 所以我的问题是: 如何将我的pipe理证书附加到请求? 请记住,这是在一个计划任务(这是一个Node.js脚本)内完成的。