Egy JPK-ből, és Servlet-ekbők álló alkalmazás REST alapúnak számít?
Mert a technológiának semmi köze a REST-séghez.
REST attól lesz, ha teljesíti a REST követelményeit.
- Nem tárol állapotot
- HTTP igék vezérlik és HTTP státuszkódokkal válaszol
- XML vags JSON alapú
- Függvények helyett erőforrásokra van osztva
- Ésatöbbi
RESTFul API a teljes neve.
Az alábbi metódusok vannak (első 5 a legsűrűbben használt)
POST, GET, DELETE, PATCH, PUT, TRACE, OPTIONS, CONNECT
Lényegében platformfüggetlen, mivel mindegy a megvalósítás nyelve. JAVA is könnyen használhat Python avagy PHP alapú REST felületet, mivel JSON-t küld és abban is kapja meg. (vagy: XML, Yaml. Lényeg, hogy tudjuk értelmezni könnyen)
Persze mint a GET esetén, nincs érkező adat, csak egy URL jön. DELETE esetén szintúgy. Megkapod az URL-t és az alapján törölsz.
Hogy nem tartanak nyilván állapotot, ezzel vitatkoznék. Egyrészt igen, mivel teszem azt egy VueJS vagy Angular alapú one-page oldallal való bejelentkezett felületen történő adatlekérés többnyire REST-tel megy (mivel máshogy) és azért egy nem bejelentkezett júzernek nem kéne azokat kiadni. Tehát ott egy 403 az illendő válasz. (De, hogy ezt HTTP-ben, vagy 200-asba búrkolt { code: 403 } a válasz, már implementáció dolog.)
[Ha jól értettem az állapot fogalmát az írásodból. Kedves egyik válaszoló.]
A küldendő válasz (ha JSON) a HTTP Response fejlécébe ez megy: application/json
Vagy ha JAVA akkor használod a Spring keretrendszer esetén a @RestController annotációt az osztályon, és lényegében Java objektumok lesznek a "JSON" felületed. Más szóval, ami kliens oldalon JSON az Java oldalon egy POJO (Nem ORM POJO!).
"Hogy nem tartanak nyilván állapotot, ezzel vitatkoznék. Egyrészt igen, mivel teszem azt egy VueJS vagy Angular alapú one-page oldallal való bejelentkezett felületen történő adatlekérés többnyire REST-tel megy (mivel máshogy) és azért egy nem bejelentkezett júzernek nem kéne azokat kiadni. Tehát ott egy 403 az illendő válasz. (De, hogy ezt HTTP-ben, vagy 200-asba búrkolt { code: 403 } a válasz, már implementáció dolog.)
[Ha jól értettem az állapot fogalmát az írásodból. Kedves egyik válaszoló.] "
Jól értetted, de akkor ez rossz RESTful megvalósítás.
Ezt úgy szokás szépen megcsinálni, hogy a szerver generál egy tokent, amit a kliens minden kérésben leküld a headerben és ezt ellenőrzi a szerver. Ha nincs token, vagy érvénytelen, akkor megy a 403, de ettől függetlenül stateless, mert nincs session, illetve nem őriz meg semmit a kliensről, csak a generált tokent.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!