Accesso
Accesso attraverso richieste HTTP
A questo punto desideriamo descrivere solo ciò che è indispensabile per la gestione di richieste HTTP. Una descrizione approfondita di HTTP e HTTPS è disponibile nel libro Ethernet TCP/IP che potete scaricare gratuitamente qui.
Chi realizza applicazioni che utilizzano HTTP, in genere non deve occuparsi di persona della gestione a livello di protocollo. Per le applicazioni nel browser è il browser stesso o le biblioteche di funzione collegate a farlo. Anche i moderni linguaggi standard offrono richiami di funzione, ai quali viene assegnata solo la rispettiva richiesta HTTP.
Aprendo https://wut.de/webio nella riga dell’indirizzo del browser, il webserver di W&T ad esempio fornisce un sito con un elenco dei modelli Web-IO da 230 V disponibili.
Un semplice esempio per una richiesta HTTP tecnica è l’apertura di https://klima.wut.de/single che visualizza semplicemente la temperatura esterna attuale della sede aziendale di W&T.
Creazione di una richiesta HTTP
Una richiesta HTTP comincia sempre con la parola chiave http://
o https://
, se è necessaria la trasmissione crittografata. Di seguito segue l’indirizzo IP o il nome dell’host del webserver a cui si vuole accedere.
HTTP viene gestito attraverso la porta TCP 80 e HTTPS attraverso la porta TCP 443. Se il server è raggiungibile da una porta diversa, può essere :
collegato separatamente. Solo adesso segue separato con /
l’effettiva richiesta (p. es. il nome di un sito web come index.html). Parametri eventualmente necessari possono venire dietro a ?
. In più di un parametro viene utilizzato come separatore &
.
http[s]://<server-ip>[:<port>]/<request>[?parameter¶meter&.......]
Comunicazione via richieste HTTP
Lo scambio di dati via richieste HTTP assomiglia sempre a uno scenario domanda/risposta. Un client HTTP invia una richiesta a un web server e il webserver risponde con un reply HTTP. Parte attiva di una comunicazione HTTP è dunque sempre il client HTTP. Il webserver non può mai inviare dati al client di propria iniziativa attraverso soluzioni puramente HTTP.
Configurazione
Configurare API web
Selezionare nel menù dell’interfaccia web Vie di comunicazione >> Web-API e attivare Consentire richieste HTTP.
La porta HTTP All’occorrenza può essere modificato in Impostazioni di base >> rete.
Gli output che devono essere attivati mediante l’API web, devono essere opportunamente autorizzati.
Più tardi si tornerà sul punto Indirizzo IP e nome di sistema.
Struttura delle richieste
Creazione e struttura delle richieste HTTP
Come già mostrato più in alto, ogni richiesta HTTP comincia con http://
o https://
seguito dall’effettivo comando di richiesta. La scrittura maiuscola/minuscola qui raffigurata deve essere implementata esattamente così. Separati da ?
possono seguire dei parametri. Nel Web-IO digitale in ogni caso sempre la password con la sintassi PW=password&
. Ogni serie di parametri viene conclusa con &
in modo tale che due serie di parametri vengano &
separate anche attraverso
Esempio: interrogazione input
Come esempio qui il comando per aprire gli stati di attivazione input. Il Web-IO è protetto dalla password blu.
http://192.168.0.25/input?PW=blau&
La risposta del Web-IO è a seconda del modello la seguente:
input;1
(Web-IO digitale, 2x input, 2x output)
input;0001
(Web-IO digitale 12x input, 12x output e 12x input, 6x relè)
La struttura dipende dalla parola chiave della richiesta, separata con punto e virgola seguita da uno o più valori.
Qui la risposta comincia con la parola chiave input
e segue il valore 1
o 0001
che rende lo stato di attivazione di tutti gli input in grafia esadecimale. Qui concretamente input 0 = ON, tutti gli altri input = OFF.
Per una migliore comprensione della codifica input esadecimale qui ancora un esempio per un Web-IO con 12 input:
Nello stato ON ci sono gli input 0,1,5,7,10,11. Gli altri input sono nello stato OFF. Da questo campione di bit si ottiene un numero duale, nel quale i bit ON =1 e i bit OFF = 0.
Qui dunque 1100 1010 0011
.
In scrittura esadecimale questo corrisponde a CA3
o in rappresentazione a quattro cifre a 0CA3
.
Qui trovate maggiori informazioni sui numeri esadecimali.
Esempio: Impostazione degli output
Il comando per l’impostazione degli output ha una struttura simile come il comando input
, ma ha più parametri:
http://192.168.0.25/outputaccess0?PW=blau&State=ON&
La cifra dietro alla parola chiave outputaccess
indica quale output si deve attivare - qui output 0. Con State
viene indicato in che stato si attiva. Sono possibili i valori ON
, OFF
e TOGGLE
(cambio di stato).
La risposta del Web-IO è a seconda del modello la seguente:
output;1
(Web-IO digitale, 2x input, 2x output)
output;0001
(Web-IO digitale 12x input, 12x output e 12x input, 6x relè)
Proprio come per l’interrogazione di input come risposta viene inviata la rispettiva parola chiave seguita dal campione Bit degli stati di output. Indipendentemente da che output viene fissato - il campione Bit riporta sempre lo stato di tutti gli output.
Una descrizione dettagliata dell’impiego delle richieste HTTP per i modelli digitali Web-IO è disponibile in lista di comandi richieste o nel manuale di programmazione sul Web-IO.