![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 119 Pomógł: 0 Dołączył: 10.10.2015 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
- "API reprezentuje interfejs aplikacji. Z punktu widzenia klas, są to metody dostarczane klientowi, który będzie używał naszej klasy."
-"Akronim API oznacza Application Programming Interface (interfejs programistyczny). Jest to punkt zaczepienia udostępniany przez usługę, apli- kację lub moduł i wykorzystywany przez inne komponenty programowe. W tym rozdziale uży- wamy też pojęcia usługi sieciowej, czyli mechanizmu udostępniania danych poprzez protokół HTTP . Na nasze potrzeby możemy przyjąć, że oba te pojęcia są równoznaczne." (Shafik.D.Mitchell.L.Turland.M.-Mistrz.PHP.Pisz.Nowoczesny.Kod) -"Usługi sieciowe: poczta elektroniczna, transmisja danych, usługi terminalowe, serwisy informacyjne" czyli API=interfejs aplikacji=usługa sieciowa=poczta elektroniczna nic nie rozumiem |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Zapoznaj się chociażby z Allegro API:
http://allegro.pl/webapi/documentation.php/show/id,1342 a zajarzysz czym jest API. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
Pierwsza definicja jest troszkę rozszerzona ale w końcu prawi to samo, że udostępniasz jakieś konkretne klasy/metody na zewnątrz za pomocą usług sieciowych (HTTP).
Zwykle rozumie się przez to API, które udostępnia usługi innym stronom czy aplikacjom ale to też może być wystawione API np. dla frontendu w ramach jednej aplikacji (jednej domeny). Mimo, że to ciągle ten sam serwer to zapytania do API też są realizowane przez HTTP. -------------------- |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 148 Pomógł: 14 Dołączył: 23.02.2013 Ostrzeżenie: (0%) ![]() ![]() |
Powiedziałbym że pierwsze dwie definicje są dobre. W pierwszej masz ograniczenie kontekstu do klasy, więc się wszystko zgadza z tymi metodami. Druga jest bardziej uniwersalna, ale też dobra. Trzeci artykuł opisuje najbardziej znane usługi sieciowe, niektóre z nich mogą być wykorzystane jako API. Twoje równanie w ogólności nie jest prawdziwe, chyba że miałbyś zamysł budowania API w oparciu o pocztę elektroniczną wtedy może to być prawda. Raczej należy patrzeć na pojęcie API jako na zbiór różnych technik udostępniania klientom swoich zasobów lub dostępu do swoich procesów/algorytmów.
-------------------- |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 207 Pomógł: 40 Dołączył: 2.06.2016 Skąd: Olsztyn Ostrzeżenie: (0%) ![]() ![]() |
API można nawet podciągnąć pod wykorzystywanie w celu połączenia rzeczy backendowych z frontem (z pominięciem komunikacji www-baza).
Po różnych zastosowaniach, które istnieją w Internecie można śmiało przyjąć, że API jest po prostu narzędziem, które zwraca, albo przetwarza z serializowane dane co ma zarówno odciążyć działanie metod/klas przerzucając renderowanie wyników na coś innego, ale i stwarza, że klasy są uniwersalne i można szybko poszerzyć całą aplikację o narzędzie na zupełnie inną platformę bez ingerencji w obecne klasy. -------------------- |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 148 Pomógł: 14 Dołączył: 23.02.2013 Ostrzeżenie: (0%) ![]() ![]() |
API może być także interfejsem jednokierunkowym, czyli że nic nie zwraca natomiast przyjmuje od Ciebie jakieś dane którymi chcesz je nakarmić, a leżące pod API mechanizmy już wiedzą co z tymi danymi zrobić.
-------------------- |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 428 Pomógł: 77 Dołączył: 10.07.2011 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
API może być także interfejsem jednokierunkowym, czyli że nic nie zwraca natomiast przyjmuje od Ciebie jakieś dane którymi chcesz je nakarmić, a leżące pod API mechanizmy już wiedzą co z tymi danymi zrobić. Zawsze zwraca ![]() Response code 200 mówi dość dużo, nawet jeżeli body jest puste ![]() Ten post edytował kpt_lucek 22.06.2016, 18:27:25 -------------------- Cytat There is a Bundle for that Lukas Kahwe Smith - October 31th, 2014 |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 3 034 Pomógł: 366 Dołączył: 24.05.2012 Ostrzeżenie: (0%) ![]() ![]() |
kpt_lucek tylko nie zawsze musi być to 200, ale to prawda odp musi jakaś być.
Ten post edytował com 22.06.2016, 20:43:57 |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 148 Pomógł: 14 Dołączył: 23.02.2013 Ostrzeżenie: (0%) ![]() ![]() |
Pisałem o API ogólnie, nie o protokole HTTP lub nawet TCP/IP jako warstwie transportowej dla API.
-------------------- |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 119 Pomógł: 0 Dołączył: 10.10.2015 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
skoro temat ciągle żyje to zapytam bo nie daje mi spokoju.
już bym zrozumiał o co chodzi z API: webApi Allegro, api.stackoverflow, ma to sens. SOAP, REST. Rozumiem. Ale jak do powyższego ma się ten http://api.symfony.com/3.0/index.html, przecież to jakby lista metod frameworka. Co to ma wspólnego z SOAP czy REST, wysyłaniem żądań HTTP? (ps a znany jest Wam jakiś polski portal udostępniający w REST, bo allegro ma SOAP chyba) Ten post edytował koszykarze 22.06.2016, 21:08:05 |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 148 Pomógł: 14 Dołączył: 23.02.2013 Ostrzeżenie: (0%) ![]() ![]() |
No więc to też jest API jakie framework Symfony daje klientowi (programiście). Możesz wywołać sobie metodę z interfejsu dostarczonych klas a one zwrócą Ci jakieś dane lub wykonają jakiś proces. Czyli delegujesz wykonanie jakiejś pracy do zewnętrznych zasobów poprzez ich interfejs - API, nie musisz sam się tym przejmować.
-------------------- |
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 1 268 Pomógł: 254 Dołączył: 11.06.2009 Skąd: Świętochłowice Ostrzeżenie: (0%) ![]() ![]() |
Ktoś kiedyś mi powiedział takie bardzo obrazowe porównanie.
Wyobraźmy sobie, że tworzenie oprogramowania to zabawa na placu zabaw. My jesteśmy rodzicem, a nasza aplikacja – dzieckiem, które przyprowadzamy na plac zabaw, by się pobawiło. Na tym placu są też inne dzieci-aplikacje. Te, które nie udostępniają API, siedzą samotnie, z dala od innych i nawet nie patrzą w ich stronę. Są niesamowicie samolubne. Natomiast te, które mają API, wyciągają rączki (czyli API ![]() Może i do bólu uproszczone spojrzenie, ale powinno choć ciut przybliżyć, czym jest API ![]() -------------------- ★Mój blog || Okiem krytyka★
|
|
|
![]()
Post
#13
|
|
![]() Grupa: Zarejestrowani Postów: 3 034 Pomógł: 366 Dołączył: 24.05.2012 Ostrzeżenie: (0%) ![]() ![]() |
Nawiązując do pierwszego tematu, to api dlatego ma ta rożne definicje, bo można je zastosować do realizacji rożnych celów, ale to nadal jest ten sam interfejs, który umożliwia integrację Ciebie jako klienta, z daną usługą, czy to będzie REST,SOAP, czy cokolwiek innego.
|
|
|
![]()
Post
#14
|
|
![]() Grupa: Zarejestrowani Postów: 531 Pomógł: 55 Dołączył: 3.01.2016 Skąd: Łowicz Ostrzeżenie: (0%) ![]() ![]() |
Ktoś kiedyś mi powiedział takie bardzo obrazowe porównanie. Wyobraźmy sobie, że tworzenie oprogramowania to zabawa na placu zabaw. My jesteśmy rodzicem, a nasza aplikacja ? dzieckiem, które przyprowadzamy na plac zabaw, by się pobawiło. Na tym placu są też inne dzieci-aplikacje. Te, które nie udostępniają API, siedzą samotnie, z dala od innych i nawet nie patrzą w ich stronę. Są niesamowicie samolubne. Natomiast te, które mają API, wyciągają rączki (czyli API ![]() Może i do bólu uproszczone spojrzenie, ale powinno choć ciut przybliżyć, czym jest API ![]() Tu się nie zgodzę, ktoś wprowadził Cię w błąd ![]() To rodzic posiada API i je udostępnia swoim dzieciom (nie odwrotnie) i tylko dzieci, które znają jego API potrafią się z danym rodzicem porozumieć. Czyli za pomocą komend API dziecko może: 1. wyciągnąć od rodzica prośbę o pobujanie na bujawce, 2. poprosić o pohuśtanie na huśtawce, 3. poprosić o wsadzenie na czubek zjeżdżalni, 4. wytrzeć noska bo katarek leci, 5. picie bo jest spragnione. PS. Nieraz Matka daje Ojcu zdjęcie aby ten nie reagował na inne dzieci znające jego język, czyli 1. dziecko prosi o cukierka, buziaka, podtarcie noska 2. ojciec wyciąga fotkę z kieszenie i porównuje 3. jak dziecko na zdjęciu nie jest to samo, które prosi to wysyła je w kosmos 4. jak jest identyczne z jego zdjęciem dzidzia dostaje to o co prosi ... czyli API=interfejs aplikacji=usługa sieciowa=poczta elektroniczna nic nie rozumiem API pozwala osobom z zewnątrz wykorzystać bogactwo aplikacji, dlatego aplikacje, które mają coś więcej do zaoferowania, chcą zautomatyzować pewne procesy, udostępniają API. Standardowe zachowanie VS API Robisz imprezę i zapraszasz ludzi do klubu. 1. Bramkarz przed pubem posiada listę gości goście się schodzą i identyfikują na podstawie dowodu, po poprawnej identyfikacji bramkarz otwiera drzwi, (to jedynie skrót tego co dzieje się przed pubem). 2. Dajesz gościom APKĘ, i stojąc przed drzwiami pubu APKA otwiera Ci drzwi, jednak wcześniej poinformowała ludzi w pubie że już jesteś. Wersja 2 jest na MAXA prosta od strony użytkownika, po prostu dzieje się wszystko z automaty to jest przykład Aplikacji z API Klucz, potrafi umilić życie. Ale w tle APKI jest dym na maxa, tam działa dopiero API aż się gotuje, w skrócie w tle aplikacja łączyła się z serwerem i sprawdzała czy Ty to Ty. Po poprawnej autoryzacji serwer wysłał informację zwrotną do APKI klucz żeby drzwi się otworzyły, wysłał również informacje do wszystkich w pubie że jesteś przed drzwiami. Działała tu usługa sieciowa połączenia z serwerem, transmisja danych czyli 2 kierunkowa komunikacja prośba o identyfikację i zwrotna informacja z kluczem, oraz łączenie się telefonu z terminalem zamka drzwi za pomocą API zamka, które jest udostępniane przez jego producenta. Usługi terminalowe czyli nasze bezprzewodowe otwieranie drzwi telefonem na podstawie kodu. Serwisy informacyjne czyli informacja gości w Pubie że jesteś przed drzwiami. (tu na maxa spłyciłem temat) Jedna aplikacja może wykorzystywać nieograniczoną ilość API. Ten post edytował LowiczakPL 24.06.2016, 07:16:32 -------------------- Szukam zleceń Symfony, Laravel, Back-End, Front-End, PHP, MySQL ...
|
|
|
![]()
Post
#15
|
|
![]() Grupa: Zarejestrowani Postów: 1 268 Pomógł: 254 Dołączył: 11.06.2009 Skąd: Świętochłowice Ostrzeżenie: (0%) ![]() ![]() |
Cytat Tu się nie zgodzę, ktoś wprowadził Cię w błąd Raczej nie ![]() Cytat To rodzic posiada API i je udostępnia swoim dzieciom (nie odwrotnie) i tylko dzieci, które znają jego API potrafią się z danym rodzicem porozumieć. Oczywiście, że to programista (rodzic) uczy aplikacje, jak posługiwać się API. Ale API nie jest w programiście, tylko jest w aplikacji. -------------------- ★Mój blog || Okiem krytyka★
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 5.05.2025 - 07:04 |