Ahojte,
nebolo jednoduchsie a casovo uspornejsie pouzit uz nejaky existujuci API
framework? Z mojho pohladu by to mohlo usetrit vela casu. Napriklad
. 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>et>:
-----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 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 | +420 720 107 791 | 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>> 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>
http://lists.vpsfree.cz/listinfo/news-list
_______________________________________________ Community-list
mailing list Community-list(a)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
http://lists.vpsfree.cz/listinfo/community-list