שימוש ב WebSocket | עזרה ראשונית
-
שלום וברכה,
מכיון שהשאלה הזו קשורה לתקשורת בין שרתים, תחום שאני די חלש בו, אשמח לעזרת והכוונת הציבור בעניין.אני מנסה להשתמש עם WebSocket כדי לאפשר הודעות דחיפה בדפדפן (ספציפית זה לא בשביל הודעות אלא בשביל הוראה לדפדפן לרענן את הדף [אולי יש פתרונות אחרים?])
להלן הפעולות שכבר עשיתי:
התקנתי rabbitQT על השרת + תוסף rabbitmq_web_stomp
בקובץ /etc/rabbitmq/rabbitmq.conf הגדרתיweb_stomp.port = 15674
אני שולח הודעה באמצעות סקריפט פייתון
#!/usr/bin/env python import pika connection = pika.BlockingConnection( pika.ConnectionParameters(host='localhost')) channel = connection.channel() channel.queue_declare(queue='hello') channel.basic_publish(exchange='', routing_key='hello', body='Hello World!') print(" [x] Sent 'Hello World!'") connection.close()
ואני מקבל הודעת אישור
[x] Sent Hello World!
בנוסף ההודעה מופיעה ברשימת ההודעה כשאני מריץ
rabbitmqctl list_queues
בנוסף יש לי קוד js
const ws = new WebSocket("ws://161.97.125.251:15674/ws"); ws.onopen = function () { console.log("WebSocket connection established."); ws.send(JSON.stringify({ "type": "queue.bind", "queue": "hello", "exchange": "", "routing_key": "hello" })); }; ws.onmessage = function (event) { console.log(event); const message = event.data; console.log("Received message:", message); }; ws.onerror = function (error) { console.error("WebSocket error:", error); }; ws.onclose = function () { console.log("WebSocket connection closed."); };
הודעת חיבור ראשונית
WebSocket connection established.
מתקבלת,
אבל אני לא מצליח לקבל את ההודעות שאני שולח מכאן והלאהמאמין שמשהו פה בהגדרות לא מספיק מהודק,
מישהו יכול לעזור לי?
תודה!