Zadejte hledaný výraz...
Jakub Glos
Webtrh.cz
Vývoj webových stránek na WordPressu a proklientský přístup pro freelancery
Třídenní infromacemi nabitý prezenční + online kurz v Praze od Webtrhu pouze za 2 871 Kč
Více informací

Tvorba vlastniho JSON API v PHP

David Musil
verified
rating uzivatele
(68 hodnocení)
5. 2. 2016 00:13:23
Ahoj,
stoji prede mnou ukol, vytvorit API, ze ktereho si bude dalsi webu tahat data.
Jelikoz s tim nemam v podstate zadne zkusenosti, tak jsem prohledl nejake tutorialy na Youtube a clanky zabyvajici se touto tematikou.
Z nich mi vysla otazka, jakou cestou se k API pripojovat:
1) metoda postavena na PHP curl
2) metoda pomoci file_get_contents()
Pripadne resite nejakou jinou cestou? Kdybyste meli nejaky tutorial na vhodny postup, treba i vcetne tvorby zabezpeceni, uvitam ho. Nemusi byt cesky (to asi ani neni :))
5. 2. 2016 00:13:23
https://webtrh.cz/diskuse/tvorba-vlastniho-json-api-v-php/#reply1172117
tomve
verified
rating uzivatele
(22 hodnocení)
5. 2. 2016 00:20:19
Spíše bych řešil jako metodu potřebuješ.
Pro post jedině curl, pro get file_... Házet curl pro get mi přijde zbytečnost.
5. 2. 2016 00:20:19
https://webtrh.cz/diskuse/tvorba-vlastniho-json-api-v-php/#reply1172116
Lukáš
verified
rating uzivatele
(22 hodnocení)
5. 2. 2016 00:23:29
Přikláněl bych se k curl. Udělat si např. soubor data-api.php a pomocí GET požadavků získávat request. Dá se tam přidat napr. i unikatni klic, pod kterym ten partner bude tahat. Aby to nemohl pouzivat kazdy druhy :)
5. 2. 2016 00:23:29
https://webtrh.cz/diskuse/tvorba-vlastniho-json-api-v-php/#reply1172115
David Musil
verified
rating uzivatele
(68 hodnocení)
5. 2. 2016 00:27:48
Diky za reakce. Jeste bych mel dodat, ze to vypada, ze data bude tahat i webov aplikace.
Nicmene tam nemam predstavu, jakou metodou je taha. Zda to jsou take nejake "get/post dotazy", ci neco jineho. Spise se tedy zeptam jejiho pripadneho tvurce.
5. 2. 2016 00:27:48
https://webtrh.cz/diskuse/tvorba-vlastniho-json-api-v-php/#reply1172114
tomve
verified
rating uzivatele
(22 hodnocení)
5. 2. 2016 00:27:55
Napsal Maruz;1264021
Přikláněl bych se k curl. Udělat si např. soubor data-api.php a pomocí GET požadavků získávat request. Dá se tam přidat napr. i unikatni klic, pod kterym ten partner bude tahat. Aby to nemohl pouzivat kazdy druhy :)
Tak s tím, že tam bude klíč se teda snad počítá, ale curl na get? (Jde o to, že jsem skoro nikdy neviděl u api s get curl - hlavně v dokumentaci api. Ale možná jsem jedna velká lama.)
---------- Post added 05.02.2016 at 00:46 ----------
btw mě došlo, že curl na get by se použil, kdyby server měl off na allow_url_fopen, pak by to mělo smysl
5. 2. 2016 00:27:55
https://webtrh.cz/diskuse/tvorba-vlastniho-json-api-v-php/#reply1172113
i-PRESS
verified
rating uzivatele
(2 hodnocení)
5. 2. 2016 00:47:38
Návrh API se často podceňuje a pak je to u nečekaně úspěšných služeb velkou překážkou :-)
V prvé řaděě půjde o to, jestli API bude public, nebo ne, tedy jestli s ním budou komunikovat pouze vaše aplikace, nebo i cizí, ale píše se o mobilní app, tak asi spíše druhá varianta.
Pro vlastní potřeby je to asi jedno, klidně jde použít nějakou jednoduchou výměnu dat založenou třeba na json, nebo XML. Jestliže ale má jít o veřejné API, příkláněl bych se nevynalézat kolo a šel cestou REST API. Práce s takovou službou je pak velmi intuitivní, téměř každý s tím již pracoval a už jen typ požadavku (POST/GET/PUT/DELETE) dává jasně vědět, co se bude s daty dělat.
Pokud je to na nějakém FW, celkem pravděpodobně už na to kostra bude připravená (třeba pro Nette RESTFULL) a opět už bude spousta věcí pořešeno. Samozřejmě není potřeba striktně dodržovat žádnou konkrétní implementaci, ale myslím, že je příjemné zachovat vnější rozhranní :-)
Další výhoda REST pak je, že je na to hromada knihoven snad ve všech jazycích, neomezí se tak pak přístup třeba pouze na PHP/NodeJS/Python pro které bude vytvořen demo klient.
---------- Příspěvek doplněn 05.02.2016 v 00:51 ----------
Ještě doplním hezký souhrn Best practice: http://blog.mwaysolutions.com/2014/06/05/10-best-practices-for-better-restful-api/
---------- Příspěvek doplněn 05.02.2016 v 00:59 ----------
Edit 2: Osobně třeba (i když to doporučují) XML v API nepoužívám vůbec, je k dispozici pouze json a nemám s tím problémy prakticky u žádných služeb. Json je dnes tak rozšířen v jazycích, že bych se nebál "odříznutí" nějaké velké skupiny lidí :) Takže za json +1
5. 2. 2016 00:47:38
https://webtrh.cz/diskuse/tvorba-vlastniho-json-api-v-php/#reply1172112
David Musil
verified
rating uzivatele
(68 hodnocení)
5. 2. 2016 01:22:05
Diky za dalsi vyjadreni, urcite se vydam cestou JSON.
Doplnim odpoved, ze API nebude public a patrne jsem v pozici, kdy budu muset vynalezt kolo - rozumej, neni to na zadnem frm jako Nette, apod.
5. 2. 2016 01:22:05
https://webtrh.cz/diskuse/tvorba-vlastniho-json-api-v-php/#reply1172111
Martin
verified
rating uzivatele
(62 hodnocení)
5. 2. 2016 01:28:04
Na práci s REST API bude spousta tříd i pro čisté PHP. Určitě bude lepší použít hotové řešení než vynalézat kolo.
5. 2. 2016 01:28:04
https://webtrh.cz/diskuse/tvorba-vlastniho-json-api-v-php/#reply1172110
David Musil
verified
rating uzivatele
(68 hodnocení)
5. 2. 2016 01:44:51
Napsal Martin Kejzlar;1264033
Na práci s REST API bude spousta tříd i pro čisté PHP. Určitě bude lepší použít hotové řešení než vynalézat kolo.
Tak samozrejme uplne znova bych to nepsal, jiste bych se nechal necim inspirovat. Nicmene ja vychazel z toho, co tu padlo a to:
Jestliže ale má jít o veřejné API, příkláněl bych se nevynalézat kolo a šel cestou REST API - verejne nebude, proto jsem nebral v potaz.
5. 2. 2016 01:44:51
https://webtrh.cz/diskuse/tvorba-vlastniho-json-api-v-php/#reply1172109
Martin
verified
rating uzivatele
(62 hodnocení)
5. 2. 2016 01:54:45
To že bude API privátní neznamená, že by REST API nebyla vhodná volba. Je to standard a alespoň se naučíš s něčím, co se ti může později hodit na jiných zakázkách.
5. 2. 2016 01:54:45
https://webtrh.cz/diskuse/tvorba-vlastniho-json-api-v-php/#reply1172108
tomve
verified
rating uzivatele
(22 hodnocení)
5. 2. 2016 02:03:03
Napsal Martin Kejzlar;1264036
To že bude API privátní neznamená, že by REST API nebyla vhodná volba. Je to standard a alespoň se naučíš s něčím, co se ti může později hodit na jiných zakázkách.
To se mi na cz fórech líbí a na en fórech chybí. Místo odpověďi, řešit proč má použit něco jiného.
Myslím, že je dospělej na rozhodnutí co (ne)použit.
5. 2. 2016 02:03:03
https://webtrh.cz/diskuse/tvorba-vlastniho-json-api-v-php/#reply1172107
David Musil
verified
rating uzivatele
(68 hodnocení)
5. 2. 2016 02:09:38
Jsem za kazdej nazor rad, alespon si udelam obrazek :)
5. 2. 2016 02:09:38
https://webtrh.cz/diskuse/tvorba-vlastniho-json-api-v-php/#reply1172106
i-PRESS
verified
rating uzivatele
(2 hodnocení)
5. 2. 2016 02:12:50
Tomve: Ale to je odpověď, ne? Však chce použít JSON a chce použít hotovou knihovnu, tak jsem napsal, kterou cestou bych šel.. REST splňuje vše z toho. Nikdo jej do ničeho nenutí, ale zase není důvod vymýšlet, jak formátovat requesty, když už to někdo udělal dříve...
Zkuste pohledat na těch zahraničních fórech bets practice pro API..
5. 2. 2016 02:12:50
https://webtrh.cz/diskuse/tvorba-vlastniho-json-api-v-php/#reply1172105
Martin
verified
rating uzivatele
(62 hodnocení)
5. 2. 2016 09:43:25
Napsal Tomve;1264038
To se mi na cz fórech líbí a na en fórech chybí. Místo odpověďi, řešit proč má použit něco jiného.
Myslím, že je dospělej na rozhodnutí co (ne)použit.
Měl jsem pocit, že REST API odsoudil proto, že to nebude public, což je podle mě chyba. To že psal i-PRESS, že kdyby to bylo public, šel by do REST API určitě nemyslel tak, že v opačném případě REST API zavrhuje.
To je prostě diskuze a já mu dávám jen svůj názor. Myslím, že nás je tady většina dospělých na to, aby se rozhodla co použít nebo nepoužít, takže to tady můžeme vlastně zrušit.
5. 2. 2016 09:43:25
https://webtrh.cz/diskuse/tvorba-vlastniho-json-api-v-php/#reply1172104
David Musil
verified
rating uzivatele
(68 hodnocení)
5. 2. 2016 11:16:09
Presne tak. Diky vsem.
Uz jsem si vyzadal od tvurce mob. appky informace, jakou cestou bude data tahat a podle toho se tedy rozhodnu.
5. 2. 2016 11:16:09
https://webtrh.cz/diskuse/tvorba-vlastniho-json-api-v-php/#reply1172103
Pro odpověď se přihlašte.
Přihlásit