Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Return net.ErrClosed from Read methods when connection is closed by us

オープン
#447 コメント 6 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
3/5
見積もり時間
1〜2日
初心者へのやさしさ
30/100
issue の種類
バグ
明瞭さ
説明が足りない
活発さ
停滞
技術スタック
go
領域
networking

調査の方向性

まず、レポートに示されている Read、CloseRead、Close の呼び出しを追跡し、次にローカルで閉じられた接続が呼び出し元にどのように報告されるかを調べます。Issue タイトルから期待される動作を確認します。このライブラリが接続を閉じた場合、Read メソッドは net.ErrClosed を返す必要があり、提示された reader と close のシーケンスを対象にカバレッジを追加します。

索引モデルが issue の本文から書いたものです。

説明

Whenever I close the connection I get this error and the server doesn't respond. Can you please help me here

My reader function;

func WsReader(log *logger.LoggerEvent, requestCtx context.Context, wsConn *_websocket.Conn, requestId uuid.UUID, userId int32) {
	for {
		_, buff, err := wsConn.Read(requestCtx)
		if err != nil {
			if err != io.EOF {
				log.Errorf(`Failed to read the data : ERROR : %s : CODE : %s`, err, _websocket.CloseStatus(err))
			}
			break
		}

		if len(buff) == 0 {
			break
		}

		data := eventSchemaHandler.GetRootAsEventWrapper(buff, 0)
		log.Infof("Event received : %s : USER_ID : %d", data.Event(), userId)
		unionTable := new(flatbuffers.Table)
		data.Payload(unionTable)
		event.SerializeEvents(log, wsConn, unionTable, requestId, string(data.Event()), string(data.ClubId()))
	}
}

My Connection Close function:

func CloseSocketConnection(wsConn *_websocket.Conn, clubId string, statusCode _websocket.StatusCode, msg string) {
	wsConn.CloseRead(context.Background())
	wsConn.Close(statusCode, msg)
} 
主要言語
Go
スター
5.5k
フォーク
377
PR マージ指標
30日以内にマージされた PR はありません

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

coder/websocket のほかの issue

coder/websocket の issue をすべて見る

似ている issue

Go の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。