- A hozzászóláshoz be kell jelentkezni
Hozzászólások
A SOAP-ról már hallottam. A fürdőszobában a szappantartóra volt írva! :-)
--
Tertilla; Tisztelem a botladozó embert és nem rokonszenvezem a tökéletessel! Hagyd már abba!; DropBox
- A hozzászóláshoz be kell jelentkezni
:))
- A hozzászóláshoz be kell jelentkezni
Mi a kérdés?
--
♙♘♗♖♕♔
- A hozzászóláshoz be kell jelentkezni
Ugy kell ezt elkepzelni, mint a HOVD-os "kedvenc ..." szavazasokat: melyik a legszimpatikusabb. Ettol meg lehet vele ugy az ember, hogy hol az egyik hol a masik hol pedig a harmadik a legjobb megoldas, de akkor is, valamelyiket jobban szereti hasznalni/irni.
- A hozzászóláshoz be kell jelentkezni
Mikor melyik... feladattól függ.
- A hozzászóláshoz be kell jelentkezni
Aki azt válaszolta hogy "mindnél tudok jobbat", leírná még is mik ezek? :)
Egyébként én a SOAP-ot kerülöm ha lehet. Szerintem borzasztóan nyakatekert formátum, ugyanilyen okokból kuporodom magzatpózba ha SAML-ös SSO-val kell foglalkoznom. Tény viszont hogy a RESTful dolgokra nem sok szabványos leíró formátum létezik, mármint a SOAP-ból lehet kliens és szerver vázat generálni de a REST-ből nem nagyon. Nálunk most a JAX-RS+Apache CXF vált be gépi oldalon és Swagger-el megsegítve készül hozzá humánusabban interaktív dokumentáció. De ennek is megvannak a limitjei.
- A hozzászóláshoz be kell jelentkezni
Kérlek szépen: egyedi igényeinkhez egyedi protokollokat használunk a TCP nevű eszközt használva (meg az SSL-t, ha úgy hozza kedvünk)... (Természetesen bele lehetne keverni további technológiákat és protokollokat, csak nem látom az előnyét.)
- A hozzászóláshoz be kell jelentkezni
Ilyesmire gondoltam én is, csak kíváncsi voltam.
(Illetve lehetne még előhozni a Protobuf-ot és társait ami nekem eszembe jutott.)
- A hozzászóláshoz be kell jelentkezni
Feladatok:
- old meg, hogy a tcp sockethez böngészővel is lehessen csatlakozni
- old meg, hogy a formátumodat több nyelvből is el lehessen érni (javascript, java, c++, etc.)
- old meg, hogy egyszerűen lehessen bővíteni
És máris ott tartasz, hogy valamilyen encoding protokoll-t használsz tcp felett (asn.1, google protocol buffers, thrift, fast buffers, messagepack, etc.) Ha meg bejön, hogy
böngészőből is el kell tudni érni, akkor jórészt a websocket marad.
- A hozzászóláshoz be kell jelentkezni
Nem egészen értem a felvetésedet, pl. egy FTP, SMTP vagy NNTP szervertől is elvárod ezeket?
- A hozzászóláshoz be kell jelentkezni
Úgy értettem hogy ha teljesen egyedi protokollt kell fejleszteni akkor azért van értelme valami szabvány szerint leírni mintsem kézzel hegeszteni.És ugye bejön a kérdés hogy szerver szerver kommunikációra kell, vagy kliens szerverre, a kliens általában mi lesz, stb. Illetve hogy mennyire bonyolult üzenettipusok vannak. Ha mint az ftp smtpnél akkor persze elég lehet egy szöveges cucc de általában nem ez a helyzet.
- A hozzászóláshoz be kell jelentkezni
SOAP esetén - miután kb. minden értelmes nyelvhez van toolkészlet hozzá - hol érdekes az, hogy milyen a transzport formátum?
----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
+1
Tapasztalatom szerint, ha valami technológiának a nevében a Simple szó szerepel, akkor biztos lehetsz abban, hogy nem az.
- A hozzászóláshoz be kell jelentkezni
Ugyanezt vettem észre a "korszerű" szóval kapcsolatban is.
Fuszenecker Róbert
- A hozzászóláshoz be kell jelentkezni
Hehe, köszi a megosztást. Elég jól összefoglalja amikbe bele lehetne kötni :)
Én egyébként pont a SOAP stack inkompatibilitással szívtam egy fél éve. Az Axis féle SOAP stack bár protokoll verziószámban kompatibilis üzeneteket adott, még sem működött együtt endpoint definícióban a Spring-es JAX-WS provider-el. Kézzel kellett faragnunk a WSDL-t addig amíg a régi klienseknek is jó volt, és az új kliensek sem küldtek a szerver számára értelmezhetetlent. Pár hétre rá bejött hogy az egyik partner .NET-ből akarta ezeket hívni, és természetesen ez sem ment zökkenőmentesen.
Most ugyanezt játszom el Shibboleth és Spring Security SAML között :(
- A hozzászóláshoz be kell jelentkezni
Köszi, ezt jó tudni. Ha ilyet fejlesztünk, akkor ez előttünk fog lebegni :) (talán egyszer végre okos emberek leszünk, és nem csak a saját hibánkból tanulunk :))
- A hozzászóláshoz be kell jelentkezni
+ ennek fényében egy REST interface nem is annyira rossz (még a függvényhívásra használjuk verzió sem, pedig az aztán mindennek az alja)
- A hozzászóláshoz be kell jelentkezni
Érdekes, használtam már mindenféle kombinációban Javas, .NET-es és PHP-s soap servicet, inkompatibilitási probléma csak annyi volt, hogy a PHP-s cucc, ami a WSDL-t generálta, nem kezelt le valamit. De az talán nem a SOAP hibája, hogy egy SOAP lib fosul van megírva.
----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™
- A hozzászóláshoz be kell jelentkezni
+1
- A hozzászóláshoz be kell jelentkezni
+1
- A hozzászóláshoz be kell jelentkezni
"SOAP esetén - miután kb. minden értelmes nyelvhez van toolkészlet hozzá - hol érdekes az, hogy milyen a transzport formátum?"
Pl. ott, ahol fontos a teljesítmény. :)
- A hozzászóláshoz be kell jelentkezni
Akkor ott nem is HTTP-t hasznalnak.
- A hozzászóláshoz be kell jelentkezni
Ez az egyik. Másik, hogy miután neked egy API csonkod van, lehetőség meglenne arra is, hogy valami hatékonyabb transzport formátumra cseréljék az XML-t. (WCF-ben mintha lenne is ilyen, csak azt annyira nem ismerem).
----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™
- A hozzászóláshoz be kell jelentkezni
Van, de nem akarok hülyeséget írni, fejből pedig hirtelen mást nem tudok, úgyhogy törölve. :)
- A hozzászóláshoz be kell jelentkezni
Nincs kedvencem. A REST-et könnyen elcseszik azok akik nem értenek hozzá (i.e. a rest resourceok által képzett 'api' nem lesz egy cseppet se pragmatikus, hanem inkább kaotikus), a SOAP -ban viszont több a ceremónia (cserébe van épeszű contract a szerver és a kliensek között).
--
arch,debian,openelec,android
dev: http://goo.gl/7Us0GN
BCI news: http://goo.gl/fvFM9C
- A hozzászóláshoz be kell jelentkezni
Nem tudom a REST-ben mit lehet elrontani (vagy en nem ertem igazan).
Nalam a REST igy csapodik le:
webszerverem/api/things -> megkapom az osszes cuccot
webszerverem/api/things/:thingid -> megkapom az adott :thingid-ju cuccot
Ezt tudom modositani (http post visszakuldom a teljes thing-et).
Tudom torolni (http delete)
Tudok ujat letrehozni (http put)
A webszerver meg lenyegeben annyit csinal, hogy ezeket lekepezi adatbazis hivasokra, vagy egy kis logikaval megspekeli.
Ezt hogyan lehet elrontani?
Baromi egyszeru debuggolni (bongeszobe epitett developer tools-szal), akar wget-tel lehet ellenorizni. Az auth layer-t tok egyszeru racsapni (jwt, cookie).
Tok egyszeru android-os klienst irni hozza (ott ugye cookie nem jatszik).
Debuggolast segiti, hogy szerver oldalon ha gondolod, az auth-ot kiveszed a hivasokbol...
Nem latom, hogy ennel hogyan lehet egyszerubbet csinalni.
Es azt sem, hogy ezt hogyan lehet elrontani.
Ertheto mi megy a halozaton, eleg egyszeru ahhoz, hogy nem kell segedprogram se, csak a ket szep szemed.
Bar a SOAP-hoz nem ertek olyan melyen, hogy erdemben le tudjam szolni...
---
Saying a programming language is good because it works on all platforms is like saying anal sex is good because it works on all genders....
- A hozzászóláshoz be kell jelentkezni
| Nem tudom a REST-ben mit lehet elrontani (vagy en nem tudom igazan).
Általában azzal, hogy nem értik meg a REST mögötti koncepciót a fejlesztők, és csak RPC-ként tudják használni, pedig nagyon nem az.
A REST tényleg jó tud lenni - megfelelően használva. Egy RPC-megoldásról áttérni REST-re kicsit olyan, mint mondjuk először használni OOP nyelvet: könnyű abba a hibába esni, hogy OOP-nek (REST-nek) látszó dolgot csináljunk, ami valójában ugyanolyan imperatív kód (RPC-hívás) mint a váltás előtt.
- A hozzászóláshoz be kell jelentkezni
Tudsz egy gyakorlati peldat mondani?
(ha nincs kvazi "tanmesekent" eloadva egy kitalalt tortenetet.)
---
Saying a programming language is good because it works on all platforms is like saying anal sex is good because it works on all genders....
- A hozzászóláshoz be kell jelentkezni
Az SPDY-s szálban már valaki írt egy példát:
/api/users/...
kontra
/api/users/new/...
A második változat azért rossz, mert keveri a REST-et és az RPC-t. Működhet, de nem RESTful. A REST lényege, hogy resource-okban gondolkodik, míg az RPC függvényhívásokban.
Nagyon leegyszerűsítve, ha az URL-ben vannak igék, vagy "new" és hasonlók, akkor az jó eséllyel nem igazi RESTful API.
- A hozzászóláshoz be kell jelentkezni
Aham, ertem.
A gyakorlatban, meg normalis framework ezt alapban tudja,
igy erolkodni kell, hogy ezt elrontsd (/new).
De engem kulonosebben nem kell meggyozni.
Nagy megelegedettseggel barkacsolok
REST+CRUD kereteben frameworkot hasznalva,
igy minden mukodik szepen mindket oldalon.
Ha majd valamibe belefutok,
ami a REST hianyossagaira vezetheto vissza:),
akkor atgondolom a velemenyem.
Addig kodolgatok nyugodtan es *gyorsan*.
---
Saying a programming language is good because it works on all platforms is like saying anal sex is good because it works on all genders....
- A hozzászóláshoz be kell jelentkezni
Félreértesz, ez nem a REST hiányossága. Adott egy technológia, amit sokan hajlamosak rosszul használni. Ennyi a történet.
Ugyanez igaz rengeteg más dologra: a REST önmagában nem jó vagy rossz. Van olyan feladat, amire jó, és van olyan fejlesztő, aki tudja használni. Meg olyan is van, hogy a feladathoz/fejlesztőhöz nem passzol.
Én a SOAP-ot preferálom, annak ellenére, hogy a SOAP-ot is lehet sz*rul használni, pl. XML-t utaztatni sztringként. Ettől viszont nem a SOAP lesz rossz, hanem a fejlesztő.
- A hozzászóláshoz be kell jelentkezni
"Adott egy technológia, amit sokan hajlamosak rosszul használni. Ennyi a történet."
Tévedés, annyi a történet, hogy adott egy buzzword arra, hogy használjuk a HTTP-t a szabványnak megfeleloen, csak epp a hyperek által leváltani készült technologiaknak nem helyettesítő terméke.
----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™"
- A hozzászóláshoz be kell jelentkezni
Szia,
milyen nyelven/frameworkkel dolgozol, adatbázist hogyan éred el? Csak azért kérdezem, mert most mi is RESTezünk, és kiváncsi lennék
mások hogyan fejlesztenek... ami engem az egész fw-ösdiben zavar, hogy nálunk a backend pl. atombuta, lényegében csak
json->tipizált object->adatbázis access-t csinál, és azon tűnődöm, hogy ezt a konverziót nem-e lehetne kivágni a francba, mert
ebben a formában haszna nincs, de legalább kódolnivalót ad.
- A hozzászóláshoz be kell jelentkezni
node.js + yeoman template generator kodokra.
Plusz mongodb, couchdb es mongoose.
A mongoose-t lehet kivagom, csak tok kenyelmes, es az auth reteg abban van.
A template generator belekenyszerit egy kodstrukturaba, ami erre (webes alkalmazasok) van kihegyezve. Szerver oldalon lenyegeben api endpoint-okat enged, kliens oldalon meg angular-ral (de lehetne emberjs vagy barmi mas) epiti a html-es guit.
De tetszik, mert alapban van egy one-page app-od,
van szerver oldali adatbazis, websocket kezeles, miegyeb.
Az egeszet becsomagolod egy docker-ba, oszt' jonapot.
Persze security-hez nem ertek, meg a szokasos warningokat gondold hozza:)
json->tipizált object->adatbázis access-t csinál,
Ez annyival tud tobbet, hogy valami logikat betehetsz a json <-> adatbazis koze.
Tehat nem egy adatbaziselerest tolsz ki http-n,
mert akkor lehetne siman couchdb-t hasznalni angularbol,
mindenfele szerver nelkul.
Igazabol ez a MEAN stack, amit mindenki emleget meg trendy:)
---
Saying a programming language is good because it works on all platforms is like saying anal sex is good because it works on all genders....
- A hozzászóláshoz be kell jelentkezni
Es pont ezert szavaztam REST-like-ra ;)
- A hozzászóláshoz be kell jelentkezni
"Nem tudom a REST-ben mit lehet elrontani"
Példák:
1. Igék használata az url-ben, pl. makeReport
2. Mindenre a GET, POST használata.
3. POST, PUT rossz használata
4. HATEOAS hiánya
5. Status code-ok rossz (nem) használata
- A hozzászóláshoz be kell jelentkezni
Például azt hogy a HTTP metódusokat nem megfelelően használják, POST használata akkor amikor nem hozunk létre semmiféle új erőforrást, illetve a különféle resource-ok és resource részfák nem egységes nevezéktan alatt vannak, hanem összevissza... sok mindent lehetne írni.
--
arch,debian,openelec,android
dev: http://goo.gl/7Us0GN
BCI news: http://goo.gl/fvFM9C
- A hozzászóláshoz be kell jelentkezni
"Nem tudom a REST-ben mit lehet elrontani "
Mindent. Kezdve azzal, hogy nem kapsz definíciót a dokumentumokról, amik jonnek-mennek, aztán mellékelnek neked valamit. Aztán a tényleges service meg vagy olyan, vagy nem. SOAP-nal ebből század annyi problémám volt.
Amugy REST=valaki elolvasta a HTTP specifikációt, es feltalálta a spanyol viaszt.
----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™"
- A hozzászóláshoz be kell jelentkezni
Azért vannak már egész ötletes workaroundok, pl http://swagger.io/ már kezd egész elterjedni. De tény hogy ez a nyomába sem ér egy WSDL-nek.
--
arch,debian,openelec,android
dev: http://goo.gl/7Us0GN
BCI news: http://goo.gl/fvFM9C
- A hozzászóláshoz be kell jelentkezni
Hol van az előírva, hogy a REST serviced csak jsont adhat vissza? Vajon jonak nevezhető az, amihez gyárilag workaround kell?
----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™
- A hozzászóláshoz be kell jelentkezni
"Hol van az előírva, hogy a REST serviced csak jsont adhat vissza?"
Ezt most honnan vetted? Senki nem írt ilyet.
"Vajon jonak nevezhető az, amihez gyárilag workaround kell?"
Ez nem egy workaround, hanem egy tool, amivel könnyebben készíthető dokumentáció, meg generálható kód a kliensek számára.
- A hozzászóláshoz be kell jelentkezni
"Amugy REST=valaki elolvasta a HTTP specifikációt, es feltalálta a spanyol viaszt."
Egyetértek, amennyiben "spanyol viasz" alatt "valami nagyszerűt" értesz. ;)
A "Richardson Maturity Model" szerintem szépen megmutatja a "spanyol viasz" mögötti logikát.
- A hozzászóláshoz be kell jelentkezni
Azt hiszem, kifejtettem mar sokszor, hogy - miután - tévedésből sokan RPC szerűen kezdik el használni és magára a dokumentumra sem tartalmaz kikotest (megis egybemossak sokan a JSON-nal), nem oldja meg a problémát, csupan ad egy maszatolast ra, új buzzwordokkal megtoldva, hogy a marketing ul tudja adni ugyanazt, ami mar egyszer mukodott.
----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™
- A hozzászóláshoz be kell jelentkezni
Szerintem igazából ez a céltól függ.
- A hozzászóláshoz be kell jelentkezni