Go で特定のエラーをキャプチャするにはどうすればよいですか?

DDD
リリース: 2024-11-06 18:32:03
オリジナル
926 人が閲覧しました

How do I Capture Specific Errors in Go?

Go での特定のエラーのキャプチャ

エラーを返す標準 Go ライブラリ関数を操作する場合、特定の型を識別して処理すると便利です「接続が失われました」または「接続が拒否されました」などのエラーの数。これを実現する方法は次のとおりです。

errors.Is とerrors.As を使用する

最新の Go バージョンでは、errors.Is とerrors.As を使用することをお勧めします。標準ライブラリの関数として。これらの関数を使用すると、エラーが特定のタイプに一致するかどうかを確認したり、エラー情報のサブセットを抽出したりできます。例:

if errors.Is(err, syscall.ECONNREFUSED) {
    // err is a connection refused error
}
ログイン後にコピー

エラー文字列の一致

標準ライブラリ関数が特定のエラー タイプを提供しない場合は、エラー文字列の比較に頼ることができます:

if err.Error() == "connection lost" {
    // err contains "connection lost" error
}
ログイン後にコピー

特定のエラー タイプの確認

一部のライブラリでは、直接確認できる特定のエラー タイプをエクスポートする場合があります:

if _, ok := err.(net.Error); ok {
    // err is a net.Error instance
}
ログイン後にコピー

すべてを確認考えられるエラー

標準ライブラリ関数によって返される考えられるエラーをすべて特定するには、ソース コードを読む必要があります。あるいは、ネット パッケージの godoc など、エラーがよく説明されているドキュメントを調べることもできます。

以上がGo で特定のエラーをキャプチャするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!