Comment envoyer des données à un serveur de socket JavaScript en PHP ?

Réponses rédigées par Antoine
Dernière mise à jour : 2019-12-08 19:23:55
Thèmes : javascript - php - socket
Question

J'ai un serveur de socket JavaScript du type socket.io qui écoute donc sur une URL et un port précis. J'ai l’habitude de lui envoyer des données depuis des pages écrites en JavaScript. On me demande de lui envoyer d'autres données depuis une page écrite en PHP, comment puis-je faire cela ?

Réponse

Vous pouvez utiliser CURL pour envoyer des données en PHP vers un serveur de sockets JavaScript du type socket.io ou autre.

<?php
$data_a = "valeur_a";
$data_b = "valeur_b";
$get_string = "a=" . $data_a . "&b=" . $data_b;
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $get_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL, "https://www.serveur-socket.com:1337/page");
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,  2);
$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
?>

Et si vous ne disposez pas déjà de la fonction adéquate, référez-vous à cette autre question pour récupérer les variables GET d'une URL en JavaScript.