L'API Antcas consente di scambiare dati tra più applicazioni.
| AVVISO: Prestare attenzione alla sicurezza quando si utilizza questa API. Utilizzare solo TLS e non utilizzare mai la porta su un indirizzo accessibile al pubblico. |
Nota: Poiché l'API deve verificare il token ad ogni chiamata, ciò può comportare un carico di sistema più elevato.
Nella Gestione Progetto può essere aggiunta una nuova
Porta API. La descrizione è disponibile nel capitolo Assegnare la porta al progetto.
Per effettuare una richiesta, questa deve essere autenticata tramite Token. La creazione di un token è descritta più dettagliatamente nel capitolo Gestire i Token.
L'API supporta diversi formati di input: Query HTTP, JSON e XML. L'output può essere in HTML, Testo, JSON o XML. La codifica dei caratteri è sempre UTF-8.
Nota: Una chiamata effettuata da un elemento nel browser risulta nell'errore 428 (Precondition Required). Questo è il meccanismo di protezione contro gli attacchi XSS, che non può essere aggirato. Questo impedisce un attacco hacker su Antcas Control.
In una richiesta POST o PUT i dati possono essere scritti nel contenuto nel formato corrispondente. Ogni variabile è case-sensitive, il che significa che viene fatta distinzione tra maiuscole e minuscole. Il ritorno avviene tuttavia sempre nel formato dichiarato. Il formato di output può essere descritto tramite l'header o tramite la variabile format. Il formato di input viene sempre riconosciuto automaticamente.
GET /visu/var/eid?format=json&token=tokenid HTTP/1.1
Host: serveraddr.com
Content-Type: application/json
I seguenti formati sono supportati nell'header e come variabile format:
| Content-Type | Variabile | Formato |
|---|---|---|
| application/json | json | JSON |
| application/xml | xml | XML |
| text/plain | text | Testo |
| text/csv | csv | CSV* |
| (altri) | html | HTML |
*Supportato solo come formato di output.
Nota: I formati Testo e CSV contengono il BOM UTF-8. Questo può essere disattivato tramite la variabile bom=FALSE.
Se un valore è descritto in più formati, l'ultimo formato ha priorità:
Le seguenti variabili sono definite globalmente.
| Variabile | Descrizione |
|---|---|
| format | Formato dell'output. |
| bom | BOM nel formato UTF-8. Il valore predefinito è TRUE. |
| key | Legge solo una variabile che è stata dichiarata. Questo metodo è inefficiente perché tutti i dati vengono preparati e filtrati solo successivamente. Dovrebbe essere utilizzato solo per piccole quantità di dati. |
| header | Output dell'header. Il valore predefinito è TRUE. |
| compact | Aggruppa tutti gli elementi secondari. Se non viene dichiarato un valore booleano, questo valore viene preso per raggruppare le variabili. Altrimenti viene utilizzato il valore .. |
| values | Restituisce solo i valori e non i nomi delle variabili. Questa opzione è disponibile solo per HTML, CSV e Testo. |
| minimal | Alias per header=FALSE, compact=minimal e values=TRUE. |
| csvdel | Delimiter CSV. Il valore predefinito è ; |
| csvenc | Parentesi di chiusura CSV. Il valore predefinito è " |
| csvesc | Carattere di escape CSV. Il valore predefinito è \ |
Le seguenti variabili possono essere utilizzate globalmente, nonché per singole variabili. Per fare riferimento a una singola variabile, questa viene definita come segue:
time*:hr=true
L'esempio sopra si riferisce a tutte le variabili che iniziano con time e time stesso. Vengono verificate tutte le regole in ordine. Pertanto, l'ultima regola corrispondente ha la precedenza. La ricerca avviene tramite espressione regolare.
| Variabile | Descrizione |
|---|---|
| hr | Human Readable. Le variabili vengono, se possibile, convertite in dati leggibili dall'uomo. Il valore predefinito è TRUE per il formato HTML, CSV e Testo. |
| numdec | Numero di cifre decimali. |
| numths | Separatore delle migliaia. |
| numdot | Separatore decimale. |
| prefix | Aggiungere testo prima della variabile. |
| suffix | Aggiungere testo dopo la variabile. |
Nei capitoli seguenti sono definite tutte le applicazioni dell'API.