Introduction
This is part 2 of a series of blog posts where I will be talking about exposing your back-end apis via Azure API Management as production ready apis.
In this post I will discuss a sample scenario that we will use throughout this series to explore the capabilities of the platform.
Sample Scenario
I have an existing "Back-End-Service" that you wish to serve up via Azure API Management. This service essentially exposes user, post & comment data related to a blogging site. It's called "Yo Blog".
I have made this "Back-End-Service" publicly accessible (http://52.175.244.3:8080) but in a realistic scenario this would be hidden in a private network with some form of security on top of it. If you would like to follow along, you can create your own serve as shown here https://github.com/rohit-lakhanpal/azure-api-mgt-resources.
As you can see, the following REST endpoints are exposed:
User Related Operations: Operations about user
Operation
|
Description
|
Fetch a list of all users
|
|
Create user
|
|
Find user by ID
|
Post Related Operations: Operations about blog posts & comments
Operation
|
Description
|
Fetch a list of all posts
|
|
Create post
|
|
Find post by ID
|
|
Find comments by post ID
|
An API Definition
Based on the "Back-End-Service" that you are planning to expose, you now need to create an API definition. This is something that we will be using in the next stage to add
I have created an API definition using Swagger. This is accessible at https://raw.githubusercontent.com/rohit-lakhanpal/azure-api-mgt-resources/master/swagger.json (Note: If you have created your own API, you will need this link before the next step.)
I will be writing a series of posts to cover this topic, stay tuned ..
- Part 1: Azure API Management - An introduction
- Part 2: Azure API Management - Your back-end api
- Part 3: Azure API Management - Creating a gateway & exposing your api
- Part 4: Azure API Management - Add rate limiting & consuming the api
- Part 5: Azure API Management - Add security
No comments:
Post a Comment