WebHU - Programozási kérdések és válaszok

Minden webszolgáltatás automatikusan pihentető webszolgáltatás?

Minden webszolgáltatás HTTP-n keresztül történik, és nem a SOAP-on keresztül, automatikusan pihentető webszolgáltatások?

Mindenhol hallottam a "nyugodt webszolgáltatások" kifejezést... de nem egyszerűen egy régi "webszolgáltatás, amely http-t használ".

Van egy URL-em az A.php címen, és az ügyfelek a következőhöz hasonló adatokat kérnek tőlem: A.php?parameters_supplied_here_etc_etc

És mivel az url-nek hosszkorlátja van, hosszabb üzenetek esetén POST-kérést küldenek a paraméterekkel az A.php címre.

Alapvetően, ha valaki beszélni akar a szerveremmel/adatbázisommal, az átmegy az A.php oldalon.

Szóval mondhatom, hogy ez egy pihentető webszolgáltatás??

10.07.2011

  • Vannak SOAP és XML-RPC webszolgáltatások is. 11.07.2011
  • A szappan implicit, ha egyszerű webszolgáltatásról van szó. Lásd: stackoverflow.com/questions/90451/ 11.07.2011
  • nem, nem beszéltem semmiről, ami a WS-sel kezdődik. szerkesztettem a kérdésem, nézd meg 11.07.2011
  • a html címkét http-re cserélte. 12.07.2011

Válaszok:


1

A "REST" építészeti stílus egyik sarokköve a HTTP teljes potenciáljának kihasználása (GET, HEAD, PUT, POST, DELETE, tartalomtípus, etag-ok, gyorsítótár-vezérlés stb.) alagút helyett. Ha ezt teszed, máris sokat nyersz, és úgy gondolom, hogy jogodban áll felhívni a szolgáltatásodat "REST Inspired"-nek vagy valami másnak. Innentől a HTTP-infrastruktúra összes meglévő építőelemét használhatja előnyére, ahelyett, hogy ellenük kellene dolgoznia.

Gyakran csábító, hogy saját RPC vagy CRUD protokollt dolgozz ki HTTP-n keresztül, és újra feltaláld a kereket. Az eredmény általában teljesen ellentétes a REST elveivel.

11.07.2011
  • mit értesz pontosan azon, hogy saját protokollt hozunk létre HTTP-n keresztül? 11.07.2011
  • Úgy értem, amikor elkezdi építeni a HTTP szolgáltatást a Servlet API-n vagy akár Jersey-n, először esetleg még a REST elveket követve, de aztán speciális eseteket ad hozzá, amelyek miatt az egész jobban hasonlít az XML-RPC-re: A tárolt eljárás végrehajtásához a kliens egy HTTP POST-ot erre a speciális URL-re a JSON törzsben lévő paraméterekkel. Afféle dolog. 11.07.2011
  • De nem pontosan ezt teszi a Google Apis (mint a Google Translate API)? code.google.com/apis/language/translate/v2/using_rest. html Mégis azt állítják, hogy nyugodtak. 11.07.2011
  • Mivel ez egy csak olvasható szolgáltatás, sokkal nehezebb rosszul csinálni :-) És mivel a szolgáltatásnak nincs struktúrája, nincs képviselhető állapot, így nehéz mindkét irányban igényelni. Tehát visszatértünk a HTTP-funkciók használatához, ahol elérhetők: Az Accep-Language és az Accept az elérési út- és lekérdezési paramétereik helyett másként tenném. Az emberek gyakran azt állítják, hogy pihennek bármiért, ami nem SOAP vagy közelebb áll a HTTP-hez. 12.07.2011
  • tehát ha nem használok SOAP-ot, akkor nem XML RPC-t használok, csak tiszta HTTP-t használok GET-tel és POSTS-szal. mondhatom, hogy tökéletesen PIHANG vagyok? 12.07.2011
  • @jaytufch: Ezt mindig mondhatod :-) A REST nem védjegy, még csak nem is protokoll, aminek a megfelelőségét ellenőrizheted. Ez egy építészeti stílus, tényleg. 12.07.2011
  • @jayfutch: lehet ezt mondani, de vágyálom lenne. 12.07.2011

  • 2

    Legalább kétféle webszolgáltatás létezik:

    • SOAP webszolgáltatások – XML séma használata az XML üzenetek szigorú meghatározására, jellemzően, de nem feltétlenül HTTP-t használva szállítási protokollként. Megbízható és szabványosított, már jó ideje léteznek, bár néha nehézsúlyúnak tartják.

    • RESTful webszolgáltatások – kevésbé merev, egyszerű HTTP protokollt használva, kihasználva a beépített GET/POST/PUT/DELETE metódusokat a CRUD művelet végrehajtásához az erőforrásokon. A tartalomegyeztetés (általában XML vagy JSON), az átirányítások (Location fejléc) és a felhasználóbarát URL-ek révén a RESTful webszolgáltatások nagyobb figyelmet kapnak.

    Ez két különböző kommunikációs protokoll, áttelepítheti egyiket a másikba, de soha nem történik automatikus átalakítás.

    10.07.2011
  • nem, nem a SOAP-ról beszéltem. szerkesztettem a kérdésem, nézd meg 11.07.2011

  • 3

    Nem, mert ahhoz, hogy REST szolgáltatás legyen, meg kell felelnie bizonyos feltételeknek. Lásd: wikipedia

    Van ott egy idézet, ami jobb választ adhat a kérdésére, mint én:

    SOAP RPC kontraszt

    A HTTP-n keresztüli SOAP RPC ezzel szemben arra ösztönzi az alkalmazástervezőket, hogy határozzanak meg egy új és tetszőleges főneveket és igéket tartalmazó szókészletet (például getUsers(), savePurchaseOrder(...)), amelyek általában a HTTP POST igére kerülnek. Ez figyelmen kívül hagyja a HTTP számos meglévő képességét, például a hitelesítést, a gyorsítótárazást és a tartalomtípus-egyeztetést, és előfordulhat, hogy az alkalmazástervező sok ilyen funkciót újra feltalál az új szókészleten belül.[8] Példák erre olyan metódusok hozzáadása, mint a getNewUsersSince(Date date), savePurchaseOrder(string customerLogon, string password, ...).

    10.07.2011
  • nem, nem a SOAP-ról beszéltem. szerkesztettem a kérdésem, nézd meg 11.07.2011

  • 4

    A REST mozaikszó a Representational State Transfer rövidítése, ami alapvetően azt jelenti, hogy minden egyedi URL valamilyen objektum reprezentációja. Mások (például SOAP) inkább RPC-szerűek. A SOAP a Simple Object Access Protocol-ra hivatkozik, és általában a HTTP POST-ra fedi. A SOAP mostanában néhány REST-szerű irányba nyúlik.

    10.07.2011
  • nem, konkrétan nem a SOAP-ról / RPC-ről stb. beszéltem. Megszerkesztettem a kérdésem, nézd meg 11.07.2011

  • 5

    Minden webszolgáltatás automatikusan pihentető webszolgáltatás?

    Nem, nincs varázslat. SOAP és más protokollok vannak, amelyek nem RESTful.

    10.07.2011
  • nem, konkrétan nem a SOAP-ról és a többi protokoll használatáról beszéltem. szerkesztettem a kérdésem, nézd meg 11.07.2011

  • 6

    Ha minden kérése ugyanazon az URI-n keresztül megy át, akkor ez egyértelmű jele annak, hogy nem használ URI-kat a rendszer egyedi erőforrásainak azonosítására, tehát - nem.

    Ezt mondva; több megszorítás létezik, mint például az egységes felületek vagy a hipermédia-vezérelt.

    12.07.2011
  • de nem ugyanaz az URI: stackoverflow.com/questions/6662333/ 12.07.2011
  • Új anyagok

    A rádiógomb ellenőrzött eseményének használata a jQueryben
    Ebben a cikkben látni fogjuk, hogyan kell dolgozni a jquery választógombbal ellenőrzött eseményeivel. A választógombok HTML gombok, amelyek segítenek kiválasztani egyetlen értéket egy csoportból...

    Körkörös függőségek megoldása terraformban adatforrásokkal – lépésről lépésre
    Mi az a körkörös függőségek Dolgozzunk egy egyszerű eseten, amikor az SQS-sor és az S3-vödör közötti körkörös függőség problémája van egy egymástól függő címkeérték miatt. provider..

    Miért érdemes elkezdeni a kódolást 2023-ban?
    01100011 01101111 01100100 01100101 — beep boop beep boop Világunk folyamatosan fejlődik a technológia körül, és naponta fejlesztenek új technológiákat a valós problémák megoldására. Amint..

    🎙 Random Noise #2  – Örökbefogadás és hit
    az analitika íratlan világának gondozása Szeretné, hogy ezek a frissítések a postaládájába kerüljenek? Iratkozzon fel itt . "Ha önvezető autókat gyártanak, akkor mi miért ne..

    A legrosszabb politika és prediktív modellek májátültetésre jelöltek számára az Egyesült Államokban
    A máj (vagy óangolul lifer) az emberi test legnehezebb belső szervére utal, amely csendesen működik a nap 24 órájában. Mit csinál a máj? 500 feladatot hajt végre a szervezet egészségének..

    5 webhely, amely 2022-ben fejleszti front-end fejlesztői készségeit
    Frontendmentor.io A tényleges projektek létrehozásával a Frontendmentor.io segítséget nyújt a front-end kódolási képességeinek fejlesztésében. A kódolást azután kezdheti meg, hogy..

    Mikor kell használni a Type-t az interfészhez képest a TypeScriptben?
    A TypeScript a JavaScript gépelt szuperkészlete, amely statikus gépelést ad a nyelvhez. Ez megkönnyíti a robusztus és karbantartható kód írását azáltal, hogy a hibákat a fordítási időben..