Azure Mobile Apps: Javascript Client SDK
With Microsoft Azure Mobile Apps you can add a scalable backend to your connected client applications in minutes. To learn more about Azure Mobile Apps, visit the Mobile Apps documentation.
This repository contains code for the azure-mobile-apps-client npm package and the cordova-plugin-ms-azure-mobile-apps Cordova plugin.
The Cordova plugin is published from the Azure/azure-mobile-apps-cordova-client repository by bundling source code in this repository. Refer Azure/azure-mobile-apps-cordova-client for more details about the Cordova plugin.
The following sections explain how to use the Javascript client SDK. You can also refer How to Use the JavaScript Client Library for Azure Mobile Apps for more details.
Support
The JavaScript client is primarily suited to Apache Cordova uses. Offline Sync is only supported in Apache Cordova situations. We test on the following platforms for Apache Cordova v6.0.0:
- Android API 19-24 (KitKat through Nougat)
- iOS versions 8.0 and later.
- Windows Phone 8.1
- Universal Windows Platform
The JavaScript client is also usable for data access in web clients. We support any platform that supports ECMAScript 5.1.
Usage instructions
You can consume the SDK in one of the following ways.
- Reference the SDK bundle in HTML's script tag
- Use the SDK bundle as a CommonJS module
- Use the SDK bundle as an AMD module
- Use the SDK as an npm package
The latest SDK bundle is available at https://zumo.blob.core.windows.net/sdk/azure-mobile-apps-client.js and https://zumo.blob.core.windows.net/sdk/azure-mobile-apps-client.min.js.
To use a specific version of the SDK (recommended), use the bundle at https://zumo.blob.core.windows.net/sdk/azure-mobile-apps-client.VERSION.js or https://zumo.blob.core.windows.net/sdk/azure-mobile-apps-client.VERSION.min.js, where _VERSION_ represents a valid version.
Sample usage
Here are a few examples of how you can use the SDK.
Use the SDK as a Javascript bundle
<html>
<head>
<script src="https://zumo.blob.core.windows.net/sdk/azure-mobile-apps-client.2.0.0.js"></script>
<script>
// Create a reference to the Azure App Service
var clientRef = new WindowsAzure.MobileServiceClient('https://YOUR-SITE-NAME.azurewebsites.net');
</script>
</head>
</html>
Use the SDK as an npm package
Install the SDK from npm: npm install azure-mobile-apps-client
OR
Install the SDK from github: npm install azure/azure-mobile-apps-js-client
You can now use it in your Javascript code as follows:
var WindowsAzure = require('azure-mobile-apps-client');
// Create a reference to the Azure App Service
var clientRef = new WindowsAzure.MobileServiceClient('https://YOUR-SITE-NAME.azurewebsites.net');
You can bundle your Javascript code using either WebPack or Browserify.
Offline data sync
This page explains the offline data sync feature in detail.
API reference
Refer https://azure.github.io/azure-mobile-apps-js-client for detailed API reference.
SDK downloads
- latest unminified and minified
- version 2.0.0 unminified and minified
- version 2.0.0-rc1 unminified and minified
- version 2.0.0-beta5 unminified and minified
- version 2.0.0-beta4 unminified and minified
Build instructions
To build the SDK bundle yourself, follow these steps:
git clone https://github.com/Azure/azure-mobile-apps-js-client.git
cd azure-mobile-apps-js-client
npm install
npm run build
The built files will be copied to the /dist
directory. The bundles for use by a web app in a browser are azure-mobile-apps-client.js and azure-mobile-apps-client.min.js. The bundle for use by the azure/azure-mobile-apps-cordova-client repository is azure-mobile-apps-client-cordova.js.
Running Unit Tests
To run unit tests for the browser, run:
npm run browserut
Future work
Brief list of work planned in the future:
- ability to cancel push and pull operations
- triggering a push automatically when a pull is performed
- support for math and date/time functions while querying for records
- callback to allow changing how records are sent to the server during a push
- configurable ID column. Currently ID column has to be named 'id'.
All these will be added over a series of updates in the next few days. Stay tuned!
Useful Resources
- Getting Started with Azure Mobile Apps
- Quickstart
- Azure Mobile Apps Cordova plugin
- Tutorials and product overview are available at Microsoft Azure Mobile Apps Developer Center.
- Our product team actively monitors the Mobile Services Developer Forum to assist you with any troubles.
Contribute Code or Provide Feedback
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.
If you would like to become an active contributor to this project please follow the instructions provided in Microsoft Azure Projects Contribution Guidelines.
If you encounter any bugs with the library please file an issue in the Issues section of the project.