Maison > cadre php > Workerman > causes et solutions de l'erreur Workerman 403

causes et solutions de l'erreur Workerman 403

Libérer: 2019-12-05 10:52:31
original
3305 Les gens l'ont consulté

causes et solutions de l'erreur Workerman 403

workerman a l'erreur suivante :

400 Bad Request
Sec-WebSocket-Key introuvable.
Ceci est un Service WebSocket et n'est pas accessible via HTTP.

Raison de l'erreur

Cette erreur indique que vous avez utilisé le protocole http pour accéder au protocole websocket service . Recommandation : tutoriel Workerman

Les développeurs doivent noter que le protocole de couche application utilisé par le client doit être le même que le protocole de couche application du serveur, c'est-à-dire quel que soit le protocole utilisé par le serveur, le client utilise le protocole.

Si le protocole ne correspond pas, il y aura des situations comme celle-ci où la communication sera refusée ou même une erreur se produira.

C'est comme accéder au port ip:3306 de la base de données dans la barre d'adresse du navigateur. Vous ne vous attendez pas à ce que la base de données vous renvoie vraiment des informations utiles, n'est-ce pas ?

Approche correcte

L'approche correcte devrait être d'établir un lien de protocole websocket et d'utiliser le protocole websocket pour communiquer avec le service de protocole websocket du travailleur. Si le client est un navigateur, vous pouvez utiliser js pour établir un lien websocket. Le code est similaire à ceci :

// 假设服务端ip为127.0.0.1,端口为2346
ws = new WebSocket("ws://127.0.0.1:2346");
ws.onopen = function() {
    alert("连接成功");
    ws.send('tom');
    alert("给服务端发送一个字符串:tom");
};
ws.onmessage = function(e) {
    alert("收到服务端的消息:" + e.data);
};
Copier après la connexion
.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal