La personalizzazione delle intestazioni client WebSocket consente di iniettare informazioni, preferenze o requisiti specifici nel processo di creazione della connessione WebSocket.
A partire da 4D v20 R3, è possibile trasmettere informazioni sulla sicurezza, dati specifici dell’applicazione o altri dati rilevanti per la connessione al server attraverso le intestazioni del client WebSocket.
Ecco tutto quello che c’è da sapere!
Come descritto nel post sul blog Websocket client, è necessario creare una classe per gestire gli eventi websocket.
Questa classe supporta un nuovo attributo, headers, che è un oggetto in cui gli attributi hanno questa sintassi: headers.key:=value.
Ad esempio, se si vuole trasmettere un token di autorizzazione al server, è necessario creare una classe che chiameremo WSConnectionHandler:
Class constructor($myToken:Text)
// Creation of the headers sent to the server
This.headers:=New object ("x-authorization";$myToken)
// Cookie header should use this syntax:
This.headers.Cookie:="yummy_cookie=choco; tasty_cookie=strawberry"
Function onMessage($ws : Object; $event : Object)
Form.messages.push($event.data)
Function onTerminate($ws : Object; $event : Object)
Form.messages.push("Connection closed")
Per maggiori dettagli, consultare la documentazione! E sentitevi liberi di partecipare alla discussione sui forum 4D.