Date post: | 24-Jun-2015 |
Category: |
Mobile |
Upload: | dmitri-artamonov |
View: | 548 times |
Download: | 0 times |
Azure Mobile Services
Global Microsoft Azure Day March 29, 2014
Presented by Dmitri Artamonov@dartamon
Agenda
• Mobile Services – origin and purpose• Client-side Features• Server-side Features• Demos• Lab
Back-end in a box
• Android, iOS, Xamarin, WinRT, WP, HTML5/JS• Easily create services• Azure Portal set up• Server scripting in JS
Mobile Services
Data
iOSHTML5WinRT
API
Push Auth
Data Services
• Querying – REST verbs (including PATCH, former MERGE)
• Filtering• Transact-SQL• Paging – Take/Skip
Dynamic Schema
• No need to pre-define the table schema• INSERT to a table and columns created by
magic• Disable function before going to production
Filtering
var query = todoItemTable.where({ complete: false
}).read().done(function (results) { alert(JSON.stringify(results));
}, function (err) { alert("Error: " + err);
});
Filtering – cont’d
• Request very similar to WCF Data Services:
GET /tables/todoitem?$filter= (complete+eq+false) HTTP/1.1
Transact SQL
• mssql.query(sql, params, options)
mssql.query('select top 3 * from statusupdates’,{ success: function(results {
console.log(results); }, error: function(err) {
console.log("error is: " + err); } });
Push Notifications
• WNS, Apple Push or Google Cloud• Windows Store client secret and package sid• Apple Store app certificate• Google API key
Authentication
• Live ID, Facebook, Google, Twitter, Azure ADS• Need the private API keys • Simple API call to log in as a user• Can filter data queries based on the user -
authorization
Authentication - ADS
• Azure provide Active Directory as an authentication service
• Need private keys to add to Mobile Services• Demo?
Scripting and Promises
• Server-side scripting available for CRUD, sched jobs and custom APIs
• Promises are async delegates using the then() and done() functions
• Launch when a value is returned• query.read().done( // do work );
Custom APIs
• Can create custom APIs with Javascript• Custom APIs get invoked on REST verbs• Javascript used to script the response
DEMOAzure Mobile Services
Things we missed
• Notification Hubs• Blob Storage• Source Control• Individual notifications• Custom API periodic notifications• Recovery/Error Handling• Voice and SMS
Questions?
LABAzure Mobile Services
Lab links
• http://www.windowsazure.com/en-us/develop/mobile/resources-html/
• “Get started with data”• “Get started with authentication”• “Use scripts to authorize users”