i denne artikkelen vil vi snakke om den beste teknologien for samspillet mellom programvare og teste den på det mest populære språket for å lage programvare.
- Hva Er Java REST API?
- Ok, men hva er egentlig EN API?
- Hvordan fungerer dette grensesnittet?
- TYPER API-Forespørsler
- Men hva BETYR HVILE?
- Forutsetninger
- Oversikt
- Slik Begynner Du Å Bruke Apier Med Java
- Registrer Deg For RapidAPI
- Finn EN API
- Abonner PÅ API
- Test Endepunktene
- Hent data ved HJELP AV API
- Få ET json-svar
- Eksempel: Bruk Av Java & Apier For Å Vise Andre typer Data
- Konklusjon
- faq
- hvordan kan du opprette En Api i java?
- Er Java EN API?
- ER JSON EN API?
Hva Er Java REST API?
dette er et tøft spørsmål, så vi deler det i noen få deler. Java er et av de mest populære programmeringsspråkene i verden. IFØLGE tiobe ranking (som bestiller språk etter deres popularitetsindeks), er det faktisk den mest populære. Det er mange grunner til Det, men Vi foretrekker oppgaven At Java er utbredt, lett å distribuere, og har en «skriv en gang, kjør overalt» magisk verktøykasse.
ønsker du å bygge EN API i stedet? Sjekk Ut Hvordan Du Oppretter EN API I Java
Ok, men hva er egentlig EN API?
VEL, API står FOR Application Programming Interface.kort sagt, det er et sett med regler som styrer samspillet mellom programvare (dvs.et objekt som mottar noen oppgave og objekt som gir denne oppgaven). Apier tillater oss å hoppe dykking dypt i kildekoden til noen tredje side programvare samtidig som vi kan bruke sine privilegier raskt og enkelt.
Hvordan fungerer dette grensesnittet?
FØRST og fremst BØR EN API ha en host-URL (eller base URL), som er hovedadressen du vil samhandle med.
Apier har også et forhåndsdefinert sett med endepunkter-unike adresser i host-URL, ansvarlig for funksjonaliteten. Videre Skal Apier ha dokumentasjon som forklarer alle endepunkter, typer returnerte verdier, etc.
etter at du har funnet en INTERESSANT API og lest dokumentasjon, må du sende en forespørsel-en enkelt oppgave for serveren (mottakersiden).
Metaforisk er det som en samtale mellom to personer: Noen (deg) stiller et spørsmål( forespørsel), og samtalepartneren (endepunktet) svarer (svar).
TYPER API-Forespørsler
DET er mange forskjellige typer forespørsler SOM API kan håndtere, men her er de mest brukte:
- GET-returnerer data fra serveren. Den mest populære forespørselen forresten.
- POST-legger til nye data på serveren. Denne typen brukes ofte til registrering eller opplasting av filer.PUT / PATCH-oppdaterer data, nyttig forespørsel, men ikke så ettertraktet.
- DELETE-fjerner data fra serveren.
Ok, vi har betydningen av det første og det siste ordet i «Java REST API».
Men hva BETYR HVILE?
dette er stilen til programvarekommunikasjon som hjelper en klient til å få de nødvendige dataene i brønnen for representasjon(REST-representasjonsstatlig overføring).
Så når VI sier REST API, mener Vi-Apier som ikke bare returnerer forespurte data, men også forbereder det for videre arbeid.
men hvordan kan vi lage En RESTful API? Alt som kreves-en haug av de arkitektoniske begrensninger:
- Client-server arkitektur-klar separasjon på to sider. Klienten sender forespørsler og venter på svaret; serveren tar da motsatt rolle. Hovedårsaken til denne begrensningen-den ene siden bryr seg ikke om noe annet enn riktig format for samspillet (det er ikke ditt problem hvordan serveren utfører forespørselen din og omvendt).
- Statsløshet-uavhengighet av hver enkelt forespørsel fra alle tidligere og fremtidige forespørsler. For eksempel, hvis du vil sende spørsmålet » Hva Charlies etternavn?», og deretter følge opp med » Hvor gammel er han?», serveren ville ikke kunne svare på sistnevnte. Serveren lagrer ikke informasjon fra klienten og krever det i hver forespørsel.
- Cacheability-i stedet for serveren, kan klienten (og selv bør) lagre noen data på lokal lagring (cache). Det øker produktiviteten, så langt som antall forespørsler blir mindre.
- Layered system-serveren skal inkludere lag for ulike deler av prosessen. Det er nyttig fordi lag ikke vet noe om hverandre, og serveren kan enkelt skaleres med nye lag(f. eks.
- Enhetlig grensesnitt – hvert endepunkt må ha en unik adresse. Enkelt, nyttig og nødvendig.
Nå som vi har all informasjon om Java RESTful Apier, La oss prøve det ut!
Forutsetninger
Først Må Du Ha Java installert på maskinen din.
du bør også ha En maven-pakkebygger for enkel installasjon og bruk av nettstedspakker. Annet enn det, trenger vi Bare Unirest biblioteket for å gjøre forespørsler uten problemer og i noen få linjer.
Her kan du se på eksemplet på kode som gjør en forespørsel fra standardmoduler:
Ser ganske vanskelig ut, ikke sant? Spesielt InputStream som en type returnert verdi (den skal behandles videre).
La oss se på samme eksempel Med Unirest:
Voila! Du kan tilordne forventet type respons og jobbe med det med en gang.
Du kan bruke Unirest ved Hjelp Av Maven, deretter opprette Et Java maven-prosjekt og finne pom.xml-fil-det viser alle avhengigheter og verktøy i prosjektet. Sett inn neste DEL AV XML-koden i<dependencies>
tag:
<dependency> <groupId>com.mashape.unirest</groupId> <artifactId>unirest-java</artifactId> <version>1.4.9</version></dependency>
Mer detaljert informasjon om avhengigheter finner du her.
Nå kan du bygge prosjektet ditt ved neste kommando i terminal (vær forsiktig, bruk den bare i hovedmappen, fordi pom.xml skal være synlig For Maven):mvn package
Nå er du klar til å bruke Java til å samhandle med Apier.
Oversikt
før vi kommer i gang, må vi finne en ENKEL API for å teste. Noen GANGER er det vanskelig å finne gratis OG nyttig API for testformål. På RapidAPI finner du over 10 000 Apier for å teste og koble til. Her kan du teste programmeringsferdighetene dine, bygge nyttige apper og til og med lage Dine Egne Api-Er.
Slik Begynner Du Å Bruke Apier Med Java
Registrer Deg For RapidAPI
Som nevnt tidligere Har RapidAPI over 10 000 Apier å komme i gang med. Og med over 1 million utviklere som bruker plattformen, er DET en AV DE mest populære OG pålitelige API-plattformene.
Så klikk her for å komme i gang, det er gratis.
Finn EN API
Nå som du har en brukerkonto, la oss finne EN API å spille med.
På RapidAPI.com, Kan Du finne Apier ved å bla:
- Kategorier (eksempel: Søk
- Kuraterte Samlinger på Hjemmesiden
La oss prøve å søke Etter IMDb API for å få litt info OM TV og filmer:
Abonner PÅ API
for å begynne å bruke DENNE API, må du først abonnere på DET. (Hint: det er en freemium plan som gir mulighet for 1000 GRATIS API forespørsler / dag). Du vil bli bedt om å oppgi ditt kredittkort i tilfelle du pådrar overages.
hvis du vil prøve noen Gratis Api-Er (uten kredittkort) i stedet, kan du bla gjennom denne samlingen.
når du abonnerer, er du nå klar til å teste endepunktene.
Test Endepunktene
la oss utforske alle endepunkter som er i DENNE API. Se til venstre PÅ API-siden:
IMDb API har bare to endepunkter:
-
GET By Search
– søk I imdb – databasen etter spørrestreng -
GET By ID or Title
– få mer detaljert informasjon om en bestemt tittel (inkluderer informasjon om film / tv, cast, produksjon og mer).
på ET AV API-endepunktene fyller du ut alle nødvendige parametere og klikker På «Test Endepunkt».
på høyre side kan du se utdrag-delen, der utviklere viser hvordan du kobler til DENNE API-EN med et støttet språk.
for DENNE API, må vi legge til to overskrifter (API unikt navn og vår Egen RapidAPI token). Alle andre params er avhengig av konkret endepunkt. La oss utforske alle endepunkter som er i DENNE API. Se på venstre side av hovedsiden.
Hent data ved HJELP AV API
Ok, vær klar, det er tid for koding. La oss finne ut alt om noen kjente film som eksisterer inne i imdb-data. Gå tilbake til koden din og importer de neste tingene:
her importerer vi URLEncoder
for å forberede params som skal sendes, og 3 nødvendige objekter fra Unirest-biblioteket:
- for å håndtere et svar (HttpResponse),
- tilordne JSON-type til det (JsonNode),
- og gjør EN GET-forespørsel (Unirest).
La Oss nå lage din hovedklasse, hvor all koden vil være:
public class App{ public static void main( String args ) throws Exception { //Here will be your code }}
ikke glem Unntak. Du bør håndtere alle advarsler og feil for å forbedre prosjektet.
Ok, la oss nå lage noen strengvariabler for å automatisere noen prosesser:
Nå som vi har opprettet spørringen, la oss sende en forespørsel og håndtere svaret:
Som du kan se, er det ganske enkelt.
for å opprette en forespørsel, bruk Et Unirest-bibliotek med HENT-funksjonen.
Vær oppmerksom på overskriftene-vi kan legge dem ved å bruke prikker for splitting.
etter å ha gjort en forespørsel og håndtert svaret med HttpResponse
– objektet, kan vi se resultatet.
Først println
viser statuskoden til svaret – et kort nummer som forklarer situasjonen med våre forespurte handlinger.
i vårt tilfelle, hvis alt er bra, skal det returnere en 200-OK status.
den andre println
viser i sin tur en av svarhodene – «Innholdstype».
La oss se hva vi skal få med innebygd API-konsoll I RapidAPI. Bare skriv inn søket ditt i skjemafeltene og klikk på «Test Endpoint»:
Du bør se det samme resultatet som vist på skjermbildet ovenfor.
Nå, la oss sjekke koden vår. Kjør programmet ditt, og du bør se:
200
Få ET json-svar
i forrige kodeseksjon brukte vi et JsonNode
objekt for å tilordne JSON-formattype til svaret.problemet er at standard jsonnode-objekt skriver ut data i en enkelt rad, noe som er ganske vanskelig å forstå. La oss legge til ett bibliotek for prettifying data-GSON. Endre pom.xml-fil med neste avhengighet:
<dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.8.5</version></dependency>
la Oss nå legge til noen importlinjer i import-delen av *.java-fil:
disse objektene vil hjelpe oss med å skrive UT VÅR JSON. Ok, nå kan vi ringe endepunktet og få et svar:
Hvis alt går bra, bør vi se følgende svar:
Eksempel: Bruk Av Java & Apier For Å Vise Andre typer Data
Som du kanskje husker, var innholdstypehodet til de forrige forespørslene for «application / json», men hva om vi vil sende/motta noe som IKKE kan behandles I JSON?
for eksempel en fil eller et bilde?
La oss prøve å demonstrere dette med Meme Generator API.
Meme Generator API består av 5 endepunkter:
La Oss bruke Generer meme endepunkt:
først, la oss endre vår import ved å legge disse linjene til toppen av vår kode:
import java.io.InputStream;import java.io.File;import java.awt.image.BufferedImage;import javax.imageio.ImageIO;
nå, lim inn følgende kodebit i hovedmetoden:
Her Håndterer vi rå kropp av svaret iInputStream
– objektet. Neste trinn er å lese det iBufferedImage
objektdynamisk bilde i minnet av programmet.
Til Slutt, la oss lage (eller oppdatere) et bilde.jpg-fil og lagre buffer inne i den. Dette bør sende ut følgende:
SOM du kan se, GÅR API tilbake til et bildeobjekt.
For å se det faktiske bildet, la oss sjekke hovedmappen til prosjektet vårt, og du bør finne:
Konklusjon
I denne veiledningen studerte vi Hvordan Du bruker RapidAPI for å lage en spennende Og nyttig Java REST API-applikasjoner og prøvde noen nyttige Apier for å rydde viktige øyeblikk i denne teknikken.
- Hvordan Bruke EN API
- Med Python
- MED PHP
- Med JavaScript
- Med Reagere
- Axios
- Med NodeJS
- Med VueJS
- Med Ruby på Skinner
- Med C#
- I Google ark
faq
hvordan kan du opprette En Api i java?
Sjekk Ut Disse Java API Tutorials om hvordan du oppretter EN API.
Er Java EN API?
Java Er et programmeringsspråk.
Api-Er Er et sett med definisjoner og protokoller som gjør det mulig for teknologiprodukter og-tjenester å kommunisere med hverandre.et Java Application Programming Interface (API) kan referere Til Java development kit (JDK) eller Api-Er som er tilgjengelige Ved Hjelp Av Java.