, Jak Používat API s Javou (Kompletní Průvodce Začátečníka)

V tomto článku se budeme hovořit o nejlepší technologie interakce mezi software a vyzkoušet na nejoblíbenější jazyk pro vytváření software.

co je Java REST API?

to je těžká otázka, takže ji rozdělíme na několik částí. Java je jedním z nejpopulárnějších programovacích jazyků na světě. Podle žebříčku TIOBE (který objednává jazyky podle jejich indexu popularity) je to vlastně nejoblíbenější. Existuje mnoho důvodů pro to, ale dáváme přednost tvrzení, že Java je velmi rozšířená, snadno implementovatelné, a má „napsat jednou, spustit všude“ kouzelnou krabici.

hledáte místo toho vytvořit API? Podívejte se, jak vytvořit API v Javě

dobře, ale co je přesně API?

API je zkratka pro aplikační programovací rozhraní.

Stručně řečeno, je to sada pravidel, která řídí interakci mezi softwarem (tj. objekt, který přijímá nějaký úkol a objekt, který dává tento úkol). API nám umožňuje přeskočit hluboké potápění ve zdrojovém kódu nějakého softwaru třetí strany a zároveň nám umožňuje rychle a snadno používat jejich oprávnění.

jak toto rozhraní funguje?

v první řadě by API mělo mít host-URL (nebo základní URL), což je hlavní Adresa,se kterou budete komunikovat.

API má také předdefinovanou sadu koncových bodů-jedinečných adres uvnitř host-URL, zodpovědných za jejich funkčnost. Kromě toho by API měla mít dokumentaci, která vysvětluje všechny koncové body, typy vrácených hodnot atd.

poté, co najdete zajímavé API a přečtete dokumentaci, musíte odeslat požadavek-jeden jediný úkol pro server (přijímající strana).

metaforicky je to jako rozhovor mezi dvěma lidmi: někdo (vy) položí otázku (žádost) a partner (koncový bod) odpoví (odpověď).

typy požadavků API

existuje mnoho různých typů požadavků, které API zvládne, ale zde jsou nejpoužívanější:

  • GET – vrací data ze serveru. Nejoblíbenější požadavek mimochodem.
  • POST-přidá nová data na server. Tento typ se často používá pro registraci nebo nahrávání souborů.
  • PUT / PATCH-aktualizuje data, užitečný požadavek, ale ne tak vyhledávaný.
  • DELETE-odstraní data ze serveru.

dobře, máme význam prvního a posledního slova v „Java REST API“.

ale co znamená odpočinek?

jedná se o styl softwarové komunikace, který pomáhá klientovi získat požadovaná data ve stavu well pro reprezentaci (REST-representational state transfer).

takže když říkáme REST API, máme na mysli-API, které nejen vrací požadovaná data, ale také je připravuje pro další práci.

ale jak můžeme vytvořit RESTful API? Vše, co je zapotřebí-banda architektonických omezení:

  • architektura klient-server – jasné oddělení na dvou stranách. Klient odesílá požadavky a čeká na odpověď; server pak převezme opačnou roli. Hlavním důvodem tohoto omezení-jedna strana se nestará o nic kromě správného formátu interakce (není to váš problém, jak server provádí váš požadavek a naopak).
  • Statelessness-nezávislost každého singulárního požadavku na všech předchozích a budoucích žádostech. Například, pokud byste poslali otázku „Jaké Charlieho příjmení?“, a pak navázat na “ jak je starý?“, server by nebyl schopen odpovědět na druhý. Server neukládá žádné informace od klienta a vyžaduje je v každém požadavku.
  • Cacheability – namísto serveru může klient (a dokonce by měl) uložit některá data do místního úložiště (mezipaměti). Zvyšuje produktivitu, pokud bude počet žádostí menší.
  • vrstvený systém-server by měl obsahovat vrstvy pro různé části procesu. Je to užitečné, protože vrstvy o sobě nic nevědí a server lze snadno škálovat s novými vrstvami (např.
  • jednotné rozhraní – každý koncový bod musí mít jedinečnou adresu. Jednoduché, užitečné a nezbytné.

Nyní, když máme všechny informace o Java RESTful API, pojďme to vyzkoušet!

předpoklady

nejprve musíte mít na svém počítači nainstalovanou Javu.

také byste měli mít Maven package builder pro snadnou instalaci a používání webových balíčků. Kromě toho budeme potřebovat pouze knihovnu Unirest pro podávání žádostí bez problémů a v několika řádcích.

zde se můžete podívat na příklad kódu, který požaduje standardní moduly:

vypadá docela obtížně, že? Zejména InputStream jako typ vrácené hodnoty (měl by být dále zpracován).

podívejme se na stejný příklad s Unirest:

Voila! Dalo by se přiřadit očekávaný typ odpovědi a pracovat s ním hned.

můžete použít Unirest s pomocí Maven, pak vytvořit Projekt Java Maven a najít pom.xml soubor-zobrazuje všechny závislosti a nástroje projektu. Vložte další část XML kódu do<dependencies> tag:

<dependency> <groupId>com.mashape.unirest</groupId> <artifactId>unirest-java</artifactId> <version>1.4.9</version></dependency>

podrobnější informace o závislostech naleznete zde.

nyní můžete vytvořit svůj projekt dalším příkazem v terminálu (buďte opatrní, použijte jej pouze v hlavní složce, protože pom.xml by měl být viditelný pro Maven):
mvn package

Nyní jste připraveni pro použití Java pro interakci s API.

přehled

než začneme, musíme najít snadné API pro testování. Někdy je obtížné najít bezplatné a užitečné API pro účely testování. V RapidAPI najdete více než 10 000 API pro testování a připojení. Zde si můžete vyzkoušet své programovací dovednosti, vytvářet užitečné aplikace a dokonce vytvářet vlastní API.

Jak Začít Používat Api s Javou

Přihlásit Se na RapidAPI

Jak již bylo zmíněno dříve, RapidAPI má více než 10.000 Api začít. A s více než 1 milion vývojářů využívajících jeho platformu, je to jedna z nejpopulárnějších a důvěryhodných platforem API.

takže klikněte sem, abyste mohli začít, je to zdarma.

Najděte API

Nyní, když máte uživatelský účet, najděte API, se kterým si můžete hrát.

On RapidAPI.com, můžete najít API procházením:

  • Kategorie (příklad: Herní Api)
  • Vyhledávání
  • Kurátor Sbírek na Domovskou stránku

Pojďme zkusit hledat na IMDb API získat informace o TV a filmy:

Přihlásit k API

začít používat toto rozhraní API, budete muset nejprve objednat. (Tip: existuje plán freemium, který umožňuje 1000 bezplatných požadavků API / den). Budete muset zadat svou kreditní kartu v případě, že vznikne přepětí.

Chcete-li místo toho vyzkoušet některá bezplatná rozhraní API (bez kreditní karty), procházejte tuto sbírku.

jakmile jste přihlášeni, jste nyní připraveni otestovat koncové body.

Otestujte koncové body

pojďme prozkoumat všechny koncové body, které jsou v tomto API. Podívejte se na levé straně API stránce:

IMDb API má pouze dva koncové body:

  1. GET By Search – hledání IMDb databáze pomocí řetězce dotazu
  2. GET By ID or Title – získat podrobnější informace o konkrétní titul (obsahuje info o filmu/tv, obsazení, produkce, a další).

v některém z koncových bodů API vyplňte požadované parametry a klikněte na „Test Endpoint“.

na pravé straně můžete vidět část úryvku, kde vývojáři ukazují, jak se připojit k tomuto API pomocí libovolného podporovaného jazyka.

pro toto API musíme přidat dvě záhlaví (API unique name a náš vlastní token RapidAPI). Všechny ostatní paramy jsou závislé na konkrétním koncovém bodě. Pojďme prozkoumat všechny koncové body, které jsou v tomto API. Podívejte se na levé straně hlavní stránky.

načíst data pomocí API

dobře, buďte připraveni, je čas na kódování. Pojďme zjistit vše o nějakém slavném filmu, který existuje uvnitř dat imdb. Vraťte se ke svému kódu a importujte další věci:

Tady jsme import URLEncoder pro přípravu params být zaslány, a 3 požadované objekty z Unirest knihovny:

  1. pro manipulaci reakce (HttpResponse),
  2. přiřazení JSON-typ (JsonNode),
  3. a dělat SI žádost (Unirest).

nyní vytvořte hlavní třídu, kde bude celý Kód:

public class App{ public static void main( String args ) throws Exception { //Here will be your code }}

nezapomeňte na výjimku. Měli byste zpracovat všechna varování a chyby pro zlepšení projektu.

dobře, nyní vytvoříme několik řetězcových proměnných pro automatizaci některých procesů:

Nyní, když jsme vytvořili dotaz, pošleme požadavek a zpracujeme odpověď:

Jak vidíte, je to docela jednoduché.

pro vytvoření požadavku použijte knihovnu Unirest s funkcí GET.

věnujte pozornost hlavičkám – můžeme je přidat pomocí teček pro rozdělení.

po provedení požadavku a zpracování jeho odpovědi objektem HttpResponse vidíme výsledek.

nejprve println zobrazuje stavový kód odpovědi-krátké číslo, které vysvětluje situaci s našimi požadovanými akcemi.

v našem případě, pokud je vše v pořádku, měl by vrátit stav 200-OK.

druhý println zase zobrazuje jednu z hlaviček odpovědí – „Content-Type“.

podívejme se, co bychom měli dostat s vestavěnou konzolí API v RapidAPI. Stačí zadat dotaz do polí formuláře a kliknout na“Test Endpoint“:

měli byste vidět stejný výsledek, jaký je vidět na obrázku výše.

nyní se podívejme na náš kód. Spusťte program a měli byste vidět:

200

Získat JSON odpověď

V předchozí sekci kódu, použili jsme JsonNode objekt pro přiřazení formátu JSON typ reakce.

problém je v tom, že výchozí objekt JsonNode tiskne data v jednom řádku, což je poměrně obtížné pochopit. Přidejme jednu knihovnu pro prettifying data-GSON. Upravte svůj pom.soubor xml s další závislostí:

<dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.8.5</version></dependency>

Nyní přidejte některé importní řádky do sekce import vašeho *.soubor java:

tyto objekty nám pomohou v pěkném tisku našeho JSON. Dobře, teď můžeme zavolat koncový bod a dostat odpověď:

Pokud vše půjde dobře, měli bychom vidět následující odpověď:

Příklad: Pomocí Java & Api pro Zobrazení další typy Dat

Jak jste si možná vzpomenou, Content-Type záhlaví předchozí žádosti byl pro „application/json“, ale co když chceme poslat/přijímat něco, co nemůže být zpracovány v JSON?

například soubor nebo obrázek?

zkusme to demonstrovat pomocí rozhraní API Meme Generator.

Meme Generator API se skládá z 5 koncových bodů:

  • Generovat mem
  • písma
  • Nahrát Obrázek
  • Nahrát písmo
  • obrázky

použijeme Generovat meme koncový bod:

za Prvé, pojďme změnit naše dovoz přidáním těchto řádků do horní části náš kód:

import java.io.InputStream;import java.io.File;import java.awt.image.BufferedImage;import javax.imageio.ImageIO;

vložit následující fragment kódu uvnitř hlavní metoda:

Tady to máme zvládnout syrové těle odpovědi do InputStream objekt. Dalším krokem je čtení v BufferedImage objektově dynamický obraz v paměti programu.

nakonec vytvoříme (nebo aktualizujeme) obrázek.jpg soubor a uložit vyrovnávací paměť uvnitř. To by mělo výstup následující:


jak můžete vidět, API se vrací do obrazového objektu.

Chcete vidět skutečný obraz, pojďme se podívat na hlavní složku našeho projektu a vy byste měli najít:

Závěr

V této příručce, učili jsme se, jak používat RapidAPI pro výrobu vzrušující a užitečné Java REST API aplikací a zkoušel několik užitečných Api pro zúčtování klíčové momenty v této technice.

  • Jak Používat API
    • Python
    • PHP
    • JavaScript
      • Reagovat
        • Axios
      • S NodeJS
      • S VueJS
    • S Ruby on Rails
    • C#
    • v Google Listy
  • Jak Vytvořit API s Java
  • Seznam REST API Návody
  • Jak používat Twitter API Java
  • Jak používat Skyscanner API s Java
  • Jak používat Yahoo Finance API s Java

nejčastější DOTAZY

Jak si můžete vytvořit API v jazyce Java?

podívejte se na tyto Java API tutoriály o tom, jak vytvořit API.

je Java API?

Java je programovací jazyk.

API jsou sada definic a protokolů, které umožňují vzájemně komunikovat technologické produkty a služby.

Java Application Programming Interface (API) může odkazovat na Java development kit (JDK)nebo API, které jsou přístupné pomocí Java.

je JSON API?

Related Posts

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *