info@yenlo.com
ned
Menu
API Management 3 min

Postman maakt het gemakkelijk om API’s te ontdekken en uit te proberen

Rob Blaauboer
Rob Blaauboer
Integration Consultant & WSO2 Trainer
Postman makes API discovery and try out easy

De voornaamste functionaliteit van WSO2 API Manager is natuurlijk het creëren en beheren van API’s. De Publisher en Devportal zijn de twee belangrijkste componenten om dit te doen. Terwijl De Publisher bedoeld is voor de organisatie die de API’s publiceert, is de Devportal of store, zoals het vroeger werd genoemd, de plaats waar ontwikkelaars API-functionaliteiten kunnen uitproberen, documentatie kunnen bekijken en kunnen communiceren met andere API-ontwikkelaars.

API Manager Devportal

In de laatste paar versies heeft de Devportal van de API Manager ontwikkelaars de mogelijkheid geboden om niet alleen het Swagger-bestand (of OpenAPI zoals het ook wordt genoemd) te downloaden, maar ook iets dat een Postman-collectie wordt genoemd.

Postman

Voor degenen onder jullie die niet bekend zijn met Postman: een Postman-collectie is een groep opgeslagen verzoeken. De Pizzashack API waarvoor ik de verzameling heb gedownload, betekent dat de API en alle bronnen / HTTP-werkwoorden in Postman zijn geladen.

postman collection

We zullen de installatie van Postman later bekijken, maar om te beginnen, hoe ziet een collectie eruit en hoe verschilt deze van een OpenAPI-definitie?

wp advanced api management guide
Whitepaper Gids Voor Geavanceerd API-Management

Aanbevelingen om je te helpen jouw eigen architectuur te ontwerpen en daarbij een selectie te maken

Nu downloaden

Zoals je kunt zien, ziet de inhoud er hetzelfde uit. Waarbij OpenAPI generieker is en ook gebruikt wordt voor de creatie van de API en schemavalidatie. De Postman-collectie moet echter worden beschouwd als een subset van de OpenAPI-definitie. Er zijn tools om een Postman-collectie om te zetten in een OpenAPI-definitie door enkele extra velden en variabelen toe te voegen.

transform postman collection into open api

Postman installeren

De installatie van Postman is afhankelijk van je besturingssysteem. Voor mijn Linux-trainingsmachines gebruik ik deze bron voor de handmatige installatie. Voor andere besturingssystemen kun je naar de Downloads-pagina van Postman gaan.

Postman is geen gratis tool, maar heeft een gratis versie die volstaat voor het doel van deze blog, namelijk het testen van een Postman-collectie. Als je meer functionaliteit nodig hebt, kijk dan eens op de pagina met de prijslijst.

Het is de moeite waard om de piad-versie te kopen van software die waarde toevoegt aan je ontwikkelingservaring! Er is ook een browsergebaseerde versie van Postman, maar voor deze zelfstudie gebruik ik de desktop-app.

postman workspace

Maak na het downloaden een gratis account aan, die heb je nodig om de collectie in een werkruimte te importeren.

Gebruik de standaard workspace of maak een nieuwe. Selecteer Import.

postman default workspace

Klik op Import en upload het bestand dat we hebben gedownload van de Devportal. Gewoonlijk zou het in de downloadmap moeten staan als je het via een browser downloadt.

postman collection workspace

De collectie wordt getoond in de workspace. Zoals op de onderstaande afbeelding, heb ik alle bronnen geopend.

postman menu resources

Als je op GET metod klikt, wordt het GET-verzoek voor de bron /menu weergegeven.

postman invocation 404

Ik krijg een 404 not found bij de aanroeping. CORS-configuratie werd aangegeven als het probleem. Ik heb de CORS ingeschakeld in de Publishers API-configuratie en een nieuwe deployment aangemaakt.

enable cors in api

Devportal geeft me een reactie, Postman niet. Wel geeft het me een antwoord, maar het is

{"code":"900902","message":"Missing Credentials","description":"Invalid Credentials. Make sure your API invocation call has a header: 
'Authorization : Bearer ACCESS_TOKEN' or 'Authorization : Basic ACCESS_TOKEN' or 'apikey: API_KEY'"}

Wat logisch is, want ik heb geen token toegevoegd. Kopieer het token van de devportal naar de AUTH config van Postman.

configure token

Het token is een JWT-token en behoorlijk lang. Je ziet er maar een deel van. Klik nu op send.

paste jwt token

Je ziet het antwoord:

token postman auth

Dit laat zien hoe je je API kunt testen met Postman met het voordeel dat je meer controle hebt over de Request en Response dan in de Devportal. Het is ook mogelijk een token te genereren in Postman, kopieer deze velden consumer key en consumer secret naar de Postman AUTH config.

sanbox oauth2 keys

En druk op Get New Access Token.

pizzashackapi access new token

Je krijgt dan zoiets als het volgende:

manage access tokens

Je kunt nu nogmaals op Send drukken. Het token zal worden gebruikt.

Meer Collections

Er zullen collecties zijn voor al jullie API’s, maar er zijn ook andere, waardevollere collecties. Zoals de product-API’s die de API Manager openstelt.

api manager documentation

Als je in de browser op “Run In Postman” klikt vanaf de API-referentiepagina, maakt deze verbinding met je Postman-app en importeert de collectie in een workspace naar keuze.

result postman workspace

Het resultaat ziet er als volgt uit:

authentication publisher result

Je ziet het Authenticatie-gedeelte (vereist voor het eerste gebruik) en de blootgestelde API’s van de Publisher webapplicatie, omdat we voor deze demonstratie de Publisher API-collectie hebben gebruikt. Evenzo zijn er voor andere API’s zoals de devportal en admin-applicatie soortgelijke collecties beschikbaar.

ned
Sluiten
Wat staat er op ons menu