Aquest article tracta sobre l'arquitectura de programari. Si cerqueu el factor de transcripció, vegeu «NRSF». |
REST (Representational State Transfer) és una arquitectura de programari pensada per sistemes distribuïts basats en hipermèdia, com ara el web. Aquest terme va ser introduït l'any 2000 en una tesi doctoral sobre arquitectures de programari de xarxes.[1] Aquesta tesi va ser escrita per Roy Thomas Fielding i dirigida per Richard N. Taylor. Roy va ser un dels principals autors de les especificacions del protocol HTTP i explica en la seva tesi com es pot aprofitar aquest protocol per tal de desenvolupar aplicacions distribuïdes. Tot i que en un principi REST es referia tan sols a un conjunt de principis d'arquitectura de xarxa i la definició i adreçament dels recursos, actualment aquest concepte es fa servir per referir-se a una interfície web que utilitza XML, JSON, HTML i HTTP sense cap conjunt de capçaleres com podria ser en el cas de SOAP i XML-RPC. Segons la tesi de Roy es poden dissenyar interfícies XML+HTTP seguint la filosofia de Remote Procedure Call sense utilitzar la complexitat del protocol SOAP.
Un servei web REST és un model centrat en les dades. Els anomenats recursos venen identificats per URIs i poden ser manipulats mitjançant accions especificades a les capçaleres HTTP.