Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > it.comp.www.php > #20583

Re: E' necessario un Web Service?

From Alessandro Pellizzari <shuriken@amiran.it>
Newsgroups it.comp.www.php
Subject Re: E' necessario un Web Service?
Date 2016-03-26 06:46 +0000
Message-ID <dlmphqFg54mU1@mid.individual.net> (permalink)
References <nd1kkf$vt$1@gioia.aioe.org> <nd1oca$7im$1@gioia.aioe.org> <nd1ops$8be$1@gioia.aioe.org> <nd1udn$gs4$1@gioia.aioe.org> <nd317v$1qmv$1@gioia.aioe.org>

Show all headers | View raw


Il Fri, 25 Mar 2016 10:43:32 +0100, Bracco Baldo ha scritto:

> Credo di aver capito cos'e' un Web Service (il mio programmino PHP che
> intercetta i dati inviati dall'app e li scrive sul database MySQL e' un
> Web Service, giusto?), pero' NON ho capito cos'e' REST, potresti
> spiegarti meglio per favore?

REST non è facile da spiegare. Nemmeno il suo creatore è riuscito a 
spiegarlo bene, e infatti continua a lamentarsi che la gente chiama REST 
quello che REST non è. :)

REST (o meglio, RESTful) significa sul server non deve essere tracciato lo 
stato della connessione.

Per esempio, se stai facendo un ecommerce, il carrello non deve essere 
salvato sul server, ma passato a ogni richiesta.

Esempio di sequenza di chiamate normali:

GET /prodotti/?id=123

Ritorna { prodotti: [ {id: 123, nome: 'Nome prodotto'}, {...} ]


POST /carrello/
{id: 123}

Ritorna un redirect a GET /carrello/

(chiamata automatica del browser): GET /carrello

Ritorna { carrello: [ 123 ] }


POST /carrello/
{id: 987 }

Ritorna un redirect a GET /carrello/

(chiamata automatica del browser): GET /carrello

Ritorna { carrello: [ 123, 987 ] }


E continua così finchè hai riempito il carrello.

In un'ambiente REST, se fai la sequenza

POST /carrello/
{id: 123}

POST /carrello/
{id: 987 }

Questa seconda chiamata ti torna { carrello: [ 987 ] }

Come vedi manca l'123, perché lo stato non viene mantenuto sul server.

Per ottenere lo stesso risultato, devi fare

POST /carrello/
[{id: 123}, {id: 987}]

E quindi elencare tutti i prodotti ad ogni chiamata.


Per essere pignoli, quello del login non è un esempio perfettamente 
valido, perchè in una situazione non-RESTful fai login e ti viene 
assegnato un session-id, mentre in una situazione RESTful devi comunque 
fare login e ti viene assegnato un token, una API key o una coppia token
+key per HMAC (o simile) che poi dovrai passare (come il session-id) a 
ogni chiamata.

Sono sicuro che ancora non è chiarissimo. Devi sbatterci la testa per 
capirlo. :)

Bye.


Back to it.comp.www.php | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

E' necessario un Web Service? Bracco Baldo <nkbk@tiscali.it> - 2016-03-24 22:02 +0100
  Re: E' necessario un Web Service? fmassei@gmail.com - 2016-03-24 14:08 -0700
    Re: E' necessario un Web Service? Bracco Baldo <nkbk@tiscali.it> - 2016-03-24 23:07 +0100
      Re: E' necessario un Web Service? fmassei@gmail.com - 2016-03-24 15:15 -0700
      Re: E' necessario un Web Service? Enrico Maria Chellini <bitit@bitit.it> - 2016-04-02 16:55 +0200
    Re: E' necessario un Web Service? Alessandro Pellizzari <shuriken@amiran.it> - 2016-03-25 08:07 +0000
  Re: E' necessario un Web Service? bramante <bramante@yopmail.com> - 2016-03-24 23:05 +0100
    Re: E' necessario un Web Service? fmassei@gmail.com - 2016-03-24 15:10 -0700
      Re: E' necessario un Web Service? bramante <bramante@yopmail.com> - 2016-03-24 23:48 +0100
        Re: E' necessario un Web Service? fmassei@gmail.com - 2016-03-24 16:12 -0700
          Re: E' necessario un Web Service? Andrea D'Amore <anddam+NOSPAM@brapi.net> - 2016-03-25 09:28 +0100
            Re: E' necessario un Web Service? fmigliori <fmigliori@gmail.com> - 2016-03-25 06:25 -0700
              Re: E' necessario un Web Service? fmassei@gmail.com - 2016-03-25 06:56 -0700
                Re: E' necessario un Web Service? fmigliori <fmigliori@gmail.com> - 2016-03-25 07:37 -0700
              Re: E' necessario un Web Service? Andrea D'Amore <anddam+NOSPAM@brapi.net> - 2016-03-25 14:57 +0100
                Re: E' necessario un Web Service? fmassei@gmail.com - 2016-03-25 07:04 -0700
                Re: E' necessario un Web Service? fmigliori <fmigliori@gmail.com> - 2016-03-25 07:44 -0700
            Re: E' necessario un Web Service? Leonardo Serni <lserni@gmail.com> - 2016-03-25 15:05 +0100
    Re: E' necessario un Web Service? Bracco Baldo <nkbk@tiscali.it> - 2016-03-24 23:13 +0100
      Re: E' necessario un Web Service? Bracco Baldo <nkbk@tiscali.it> - 2016-03-24 23:20 +0100
      Re: E' necessario un Web Service? fmassei@gmail.com - 2016-03-24 15:44 -0700
        Re: E' necessario un Web Service? Bracco Baldo <nkbk@tiscali.it> - 2016-03-25 00:07 +0100
          Re: E' necessario un Web Service? fmassei@gmail.com - 2016-03-24 16:20 -0700
      Re: E' necessario un Web Service? bramante <bramante@yopmail.com> - 2016-03-25 00:48 +0100
        Re: E' necessario un Web Service? Bracco Baldo <nkbk@tiscali.it> - 2016-03-25 10:43 +0100
          Re: E' necessario un Web Service? Alessandro Pellizzari <shuriken@amiran.it> - 2016-03-26 06:46 +0000
            Re: E' necessario un Web Service? Bracco Baldo <nkbk@tiscali.it> - 2016-03-26 12:46 +0100
              Re: E' necessario un Web Service? Alessandro Pellizzari <shuriken@amiran.it> - 2016-03-26 17:51 +0000
                Re: E' necessario un Web Service? Bracco Baldo <nkbk@tiscali.it> - 2016-03-26 20:34 +0100

csiph-web