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
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(a)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(a)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(a)lists.vpsfree.cz
<mailto:News-list@lists.vpsfree.cz>
> <mailto:News-list@lists.vpsfree.cz
<mailto:News-list@lists.vpsfree.cz>>
_______________________________________________ Community-list
mailing list Community-list(a)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(a)lists.vpsfree.cz
<mailto:Community-list@lists.vpsfree.cz>
http://lists.vpsfree.cz/listinfo/community-list
_______________________________________________
Community-list mailing list
Community-list(a)lists.vpsfree.cz
http://lists.vpsfree.cz/listinfo/community-list