La personnalisation des en-têtes client WebSocket vous permet d’injecter des informations, des préférences ou des exigences spécifiques dans le processus d’établissement de la connexion WebSocket.
À partir de 4D v20 R3, vous pouvez transmettre des informations de sécurité, des données spécifiques à l’application ou d’autres données relatives à la connexion au serveur par le biais d’en-têtes client websocket.
Voici tout ce que vous devez savoir !
Comme décrit dans l’article de blog Websocket client, vous devez créer une classe pour gérer les événements websocket.
Cette classe supporte un nouvel attribut, headers, qui est un objet dont les attributs ont la syntaxe suivante : headers.key:=value.
Par exemple, si vous voulez transmettre un jeton d’autorisation au serveur, vous devez créer une classe que nous appellerons la classe 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")
Consultez la documentation pour plus de détails ! Et n’hésitez pas à participer à la discussion sur les forums 4D.