Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Component close/reconnect behavior using RawSocket

Aperta
#1,530 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
45/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
python
Ambito
networking

Direzione di ricerca

Inizia con l’esempio di Component API, concentrandoti sul trasporto rawsocket e sulla chiamata await comp.stop() all’interno dell’handler on_join; confrontane il comportamento con quello dell’esempio websocket. Poiché nell’issue non sono indicati file sorgente o test, individua prima i punti di ingresso per l’arresto e la riconnessione della connessione RawSocket. Il lavoro è completato quando un arresto ordinato avviato dall’utente non attiva tentativi automatici di riconnessione.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

bug needs-investigation wamp

When using RawSocket on the Component API, and closing the component's session from user code in an orderly fashion, no automatic reconnection attempts should happen.

import asyncio
import time

from autobahn.asyncio import component

# works as expected
transports=dict(
    type='websocket',
    url='ws://127.0.0.1:8080/ws',
)

# doesn't work properly
transports=dict(
    type='rawsocket',
    url='rs://127.0.0.1:8081',
)

comp = component.Component(
    transports=transports,
)

@comp.on_join
async def _(session, details):
    await asyncio.sleep(2)
    await comp.stop()

component.run([comp])

Original issue from OP on forum https://forum.crossbar.io/t/howto-ask-a-component-to-close-cleanly/2077

Lingua principale
Python
Stelle
2.5k
Fork
767
Merge medio
23h 55m
PR unite (30g)
25

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di crossbario/autobahn-python

Tutte le issue di crossbario/autobahn-python

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.