15
#gib2017 #gib2017 2017 - Brisbane Ashley Knowles | Mexia @ashkbne Azure API Management & API Apps

Azure API Management & API Apps [Global Integration Bootcamp 2017]

Embed Size (px)

Citation preview

Page 1: Azure API Management & API Apps [Global Integration Bootcamp 2017]

#gib2017 #gib2017

2017 - Brisbane

Ashley Knowles | Mexia@ashkbne

Azure API Management& API Apps

Page 2: Azure API Management & API Apps [Global Integration Bootcamp 2017]

#gib2017

Azure API Management

Facadedecouple

modernizeoptimize

...

Middlewaresecureprotectcache

...

Monitoringusagehealth

monetization...

Developerdiscover

documenton-board

...

On-prem APIs 3rd party APIs

AZURE API MANAGEMENT

APIs on Azure Azure APIs

API consumers

Page 3: Azure API Management & API Apps [Global Integration Bootcamp 2017]

#gib2017

Page 4: Azure API Management & API Apps [Global Integration Bootcamp 2017]

#gib2017

Page 5: Azure API Management & API Apps [Global Integration Bootcamp 2017]

#gib2017

Policies

Page 6: Azure API Management & API Apps [Global Integration Bootcamp 2017]

#gib2017

• Subscription based limits applied at the product level

• Key based limits allow

finer control and can track usage based on IP address, header values, other factors

Rate Limiting & Quota

Page 7: Azure API Management & API Apps [Global Integration Bootcamp 2017]

#gib2017

APIM in Azure

Page 8: Azure API Management & API Apps [Global Integration Bootcamp 2017]

#gib2017

• Implementation of Azure App Services• Not limited to .NET• Simple MVC architecture• Visual Studio 2015+ makes it quick & easy

to deploy an API and expose documentation with Swagger UI

• Basic API app with Database Backend - https://docs.microsoft.com/en-us/aspnet/core/tutorials/first-web-api

Azure API Apps

Page 9: Azure API Management & API Apps [Global Integration Bootcamp 2017]

#gib2017

• App_Start\SwaggerConfig.cs• Configure/enable Swagger UI

• App_Start\WebApiConfig.cs• Configure routes -

https://docs.microsoft.com/en-us/aspnet/web-api/overview/web-api-routing-and-actions/routing-and-action-selection

• Web.config – web application configuration• Includes some app specific config, such as connection strings for

Service Bus, databases etc• Controllers

• Class per model for API CRUD operations (HTTP GET/POST/PUT/DELETE)

• Models• Data models for the API operations (schema)

Anatomy of a .NET WebAPI app

Page 10: Azure API Management & API Apps [Global Integration Bootcamp 2017]

#gib2017

Page 11: Azure API Management & API Apps [Global Integration Bootcamp 2017]

#gib2017© 2016 Microsoft Corporation. All rights reserved. Microsoft

Ignite

Questions?

Page 12: Azure API Management & API Apps [Global Integration Bootcamp 2017]

#gib2017

Lab #1API Management + API App

Page 13: Azure API Management & API Apps [Global Integration Bootcamp 2017]

#gib2017

Hands-On Lab1. Create Service Bus & a

queue2. Create API Management

Instance3. Configure, Test and

publish a sample API4. Manage with API

Management

Stretch Activities5. Retrieve an order off the Service Bus queue with your API6. Publish a 3rd party API with APIM, and

Page 14: Azure API Management & API Apps [Global Integration Bootcamp 2017]

#gib2017

Lab Document Gotchas• Instructions say use “Web API Controller -

Empty; use “Web API 2 Controller – Empty” (same as screenshot)

• Add WindowsAzure.ServiceBus nuget package

• API Management – Products (PREVIEW) now opens directly in the Azure portal

Page 15: Azure API Management & API Apps [Global Integration Bootcamp 2017]

#gib2017© 2016 Microsoft Corporation. All rights reserved. Microsoft

Ignite

Let’s [email protected]

@ashkbne

linkedin.com/in/ashleyknowlesashleyknowles.net