1. Mobile Backend Overview :
Mobile backend is logical grouping APIS .The gateway for mobile apps to interface with the exposed MCS services and indirectly enterprise backend services . Security and exposing the platform and custom APIs are MBE key concepts .
Gateway
Authentication and Authorization
Group & publish APIs
Consume via REST or mobile SDK
Hides implementation details
Create 1 to many used by 1+ apps
Versioned deployed managed
2. Creating MBE
Developers can take top to bottom or bottom to top approach in creating the MCS artifacts. MCS allows flexibility to suit different customer needs .
-
Create the mobile Back end
-
Create realm
-
Create and configure APIs
-
Register app
-
Install and code with SDK
-
Test and Fix
-
Publish and deploy
3. Custom APIS
Custom APIS give you the chance to take the ugly . horrible mess of on premise . legacy enterprise endpoints, combined with 3rd party web services and turn them into optimized endpoints for mobile consumption .
-
Beyond pre built Platform APIs
-
Build your own custom APIs
Defne Restful endpoints
Implemented in Node.js
Consume connectors
-
Expose through Mobile BAckends
Can be reused
Protected by roles
Mobile developer defines Interface REST API and Mock data
Service Developer defined implementation , define Node.js code and create connectors .
Mobile and service developers will be working hand in hand
Interface (Mobile Developer )
-
Creates the custom API
-
Defines the endpoints
-
REST APIs endpoints
-
HTTP methods ( GET,PUT,POST,DELETE)
-
Media types
-
Schemas , traits, resources types
-
Create bia MCS UI or RAML
-
3. Define security
4. Exposes through Mobile backend
5. Tets via UI using mockup data
Implementation ( Service Developer)
-
Implements connector
-
Implement Node,.js code
-
Upload and sets which version of code
-
Tets via UI using real code
Defining the Interface REST ENdpoints
REST APIs can be defined via
API Designer in MCS user interface
RAML
Designer stores definition in RAML file
RESTful API Modelling Language (RAML)
RAMl is YAML based language for describing RESTful APIs.
It encourages reuse , enables discovery and pattern sharing and aims for merit based emergence of best practices .
Describe HTTP resources
Captures design and definition
RAML is to RESt as WSDl is to SOAP
Not just for REST web services
Based on YAML
Easy to learn read and write
Popular support via developers
Open source replaces defunct WADL
Competitor to Swagger
3rd Party tooling support growing
RAML needs to capture following :
Resources
URIS , paths + parameters
HTTP Methods
Get Put Post Delete Methods
Media Types - JSON , XML , Gif m, PNG
HTTP Headers + Payload
Request + Response