Ahoj,
zkousel jsem to delat jak s Rails tak s grape a ani jedno nesplnovalo pozadavky. Na ohybani to bylo moc daleko.
Testy zatim nejsou ve frameworku samotnem, ale nase API testovane je, viz https://github.com/vpsfreecz/vpsadminapi.
Jakub
On 05/22/2014 09:48 AM, René Klačan wrote:
Ahojte,
nebolo jednoduchsie a casovo uspornejsie pouzit uz nejaky existujuci API framework? Z mojho pohladu by to mohlo usetrit vela casu. Napriklad https://github.com/intridea/grape . Ci si myslite, ze poziadavky su natolko specificke, ze by to podobna kniznica efektivne nepokryla a bolo by ju nutne az nezmyselne ohybat?
Ale inak skvela praca, velmi pekne napisane a tiez velmi ocenujem, ze to je v Ruby! Len by som vytkol to, ze tam nevidim testy.
Rene
2014-05-21 22:10 GMT+02:00 Pavel Snajdr <snajpa@snajpa.net mailto:snajpa@snajpa.net>:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Ahoj, posilat porad username+password a nemit rozliseni mezi API pristupem a UI pristupem je smrt, natoz to chtit nejak potom auditovat, totalne nemozne - takze to je jedna z veci, co se bude resit dal, vime o tom. Neco na ten, jak rikas, je urcite v planu, ono to jenom nejde delat jako revoluci "vsechno najednou", jelikoz prerodit vpsAdmin za behu v neco min srackoidniho (zdravim sam sebe o 5 let v minulosti) to neni task na par tydnu a obzvlast kdyz se to clovek rozhodne udelat poradne a jeste to chce udelat recyklovatelne. Proto jsme vymysleli jak co nejvic ty prace ohledne API a tak automatizovat uz samotnym napsanim toho kodu urcitym stylem, aby se napsal jenom jednou a nebylo potreba udrzovat 228342934 <tel:228342934> veci okolo jako napr. dokumentace a kvadrilion ruznych klientu pro triliardu platform :)) Aither prerodil tenhle muj napad v HaveAPI, coz vypada jako uplne super vec, na kterou jsem celou dobu cekal. Uz nejakou chvili se zabyvam s ruznymi lidmi automatizaci ruznych low-level procesu (mluvim o low-level vecech z pohledu provozovatele byznysu online, tzn. nastaveni OS, runtime jazyka, DB...) a presne nejaka takovahle moznost jak vybavit uzavrene komplexni prostredi jasne popsanym strukturovanym rozhrani na praci s nim, to mi presne chybelo. Proto bych chtel, jestli mate kdo ted cas, fakt na to mrknete, jestli jste meli potrebu kdy tvorit nejaky APIcka pro neco, tohle je uplne o necem jinym, je to holt vyzdimana koncentrovana bolest pri psani API pretavena v lek :)) No a celej duvod, proc jsem se s Aitherem dohodnul, ze to announcne uz ted, kdyz se uci na statnice, je aby byl prostor na feedback. Takze kdo jste kdy delal HTTP API pro neco, kouknete na to a dejte vedet. Dik! S pozdravem Pavel Snajdr +421 948 816 186 <tel:%2B421%20948%20816%20186> | +420 720 107 791 <tel:%2B420%20720%20107%20791> | 110-010-956 CTO of Relbit | Predseda vpsFree.cz, o.s. | RHCE http://relbit.com | http://vpsfree.cz | https://www.redhat.com On 05/21/2014 08:20 PM, Ján Raska wrote: > Ahoj, > > super napad. Akurat mam malu vyhradu voci autentifikacii, moderne > RESTful APIs sa dnes vacsinou robia stateless s pouzitim tokenu, > ktory sa zasiela vramci Authentication headeru. S tym ze okrem > temporary tokenu je aj moznost zisat long-term token (bez > expiracie), alebo este lepsie short-term token spolu s refresh > tokenom (refresh token bezpecne ulozim, komunikujem so short term > tokenom a ked vyprsi, tak pomocou refresh tokenu urobim reissue). V > podstate na podobnom principe pracuje OAuth 2.0, ale na nieco > taketo je z mojich skusenosti jednoduchsie nakodit nieco vlastne > nez implementovat cely OAuth (pokial samozrejme nepouzijem hotovu > libku :) ). > > Vyhoda takehoto API je, ze sa potom k tomu daju napisat mobilne > appky, do ktorych sa prihlasis raz a oni si token ulozia do device > DB. > > Jano > > On 20 May 2014, at 19:01, Jakub Skokan <jakub.skokan@havefun.cz <mailto:jakub.skokan@havefun.cz> > <mailto:jakub.skokan@havefun.cz <mailto:jakub.skokan@havefun.cz>>> wrote: > >> Zdravím, >> >> na adrese https://api.vpsfree.cz je k dispozici vývojová verze >> vpsAdmin API. Je to ve stavu, kdy to funguje, ale není to >> doladěné a nemá to všechny funkce. >> >> Při vývoji vzniknul framework HaveAPI [1], který naše API >> využívá. Jedná se o framework na tvorbu sebepopisujících se >> RESTful API. >> >> Sebepopisující se API odpovídá na HTTP metodu OPTIONS a vrací >> JSON obsahující seznam dostupných verzí API, objektů, akcí, >> jejich vstupních/výstupních parametrů, popis, validaci, ukázku >> použítí, apod. Díky této vlastnosti lze vytvořit klienta, který >> dokáže komunikovat s jakýmkoli API, které je postavené nad >> HaveAPI. Změny v API se okamžitě projeví ve všech klientech, >> atd. >> >> Dokumentace API: - Automaticky generovaná frameworkem na >> https://api.vpsfree.cz >> >> Co to zatím umí: - Vytvoření a smazání playground VPS, - seznam >> vlastních VPS, start, stop, restart, změna hesla, přeinstalace, - >> výpis konfigurace VPS, - seznam IP adres VPS, - seznam dostupných >> dstribucí (nutné k vytvoření VPS). >> >> Připravení klienti: - CLI a klient v Ruby (>= 2.0) [2], který >> také existuje v obecné formě (pro jakékoliv API, rozdíl je pouze >> ve jménu a výchozí URL) [3], - PHP klient [4] a jeho obecná forma >> [5]. >> >> Návody na instalaci a použití jednotlivých klientů jsou na >> přiložených odkazech. >> >> Aktivita je vítána. Hodilo by se, kdyby se našlo pár lidí, co by >> udělali klienta ve svém oblíbeném jazyce. Nejvíc by se nám hodil >> alespoň proof-of-concept v JS, abychom si ověřili, že je možné >> udělat UI kompletně v HTML5 & JS, já už na to aktuálně nemám >> čas. >> >> Pokud nenarazíme na nějaké větší problémy, aplikační logika >> vpsAdminu se bude postupně přesouvat z webového rozhraní do >> tohoto API. Současně se z vpsAdminu pomalu bude stávat nezávislý >> projekt na vpsFree.cz, aby jeho použití nebylo limitováno naším >> sdružením a šel nasadit i jinde. >> >> Do budoucna se počítá s tím, že přes API půjde hýbat s parametry >> VPS a člen si bude moci rozdělit přidělené prostředky mezi více >> VPS jak se mu zlíbí (v rozumných mantinelech). >> >> Rozhodli jsme se to spustit a oznámit co nejdříve, i když >> nekompletní, aby se koncept otestoval v praxi. Budu rád za >> jakoukoliv zpětnou vazbu, nápady či připomínky. >> >> [1] https://github.com/vpsfreecz/haveapi >> >> [2] https://github.com/vpsfreecz/vpsfree-client >> >> [3] https://github.com/vpsfreecz/haveapi-client >> >> [4] https://github.com/vpsfreecz/haveapi-client-php/tree/vpsfree >> >> [5] https://github.com/vpsfreecz/haveapi-client-php -- S >> pozdravem >> >> Jakub Skokan _______________________________________________ >> News-list mailing list News-list@lists.vpsfree.cz <mailto:News-list@lists.vpsfree.cz> >> <mailto:News-list@lists.vpsfree.cz <mailto:News-list@lists.vpsfree.cz>> >> http://lists.vpsfree.cz/listinfo/news-list > > > > _______________________________________________ Community-list > mailing list Community-list@lists.vpsfree.cz <mailto:Community-list@lists.vpsfree.cz> > http://lists.vpsfree.cz/listinfo/community-list > -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iF4EAREIAAYFAlN9CEsACgkQMBKdi9lkZ6p1UgD9FhUz15ApUnlTqufJgATy2BCa QPkScmJTxfU/gcDGynAA+wavOPBtamMxqOjiRsuKHt4SUYPLtJSuEq2wB8VrH8e/ =jIPF -----END PGP SIGNATURE----- _______________________________________________ Community-list mailing list Community-list@lists.vpsfree.cz <mailto:Community-list@lists.vpsfree.cz> http://lists.vpsfree.cz/listinfo/community-list
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list