Wie kann der Fehler „DNS-Nachricht kann nicht entmarshaliert werden' behoben werden, wenn unter Ubuntu eine Verbindung zur MongoDB Cloud von Go aus hergestellt wird?

Patricia Arquette
Freigeben: 2024-11-23 21:52:12
Original
247 Leute haben es durchsucht

How to Fix the

Fehlerbehebung bei der MongoDB-Cloud-Verbindung in Go unter Ubuntu: Fehler „DNS-Nachricht kann nicht entmarshaliert werden“

Dieser Fehler „DNS-Nachricht kann nicht entmarshaliert werden“ Tritt auf, wenn eine veraltete Version von Go versucht, einen komprimierten Domänennamen in einem SRV-Eintrag zu analysieren. Dies steht nicht in direktem Zusammenhang mit dem MongoDB Go-Treiber.

Ursache:

Go Version 1.11 führte eine strengere Einhaltung von RFC-2782 ein, die eine spezifische Formatierung für SRV-Datensätze erzwingt. Einige DNS-Server komprimieren möglicherweise Domänennamen in ihren SRV-Einträgen, was Go 1.11 ablehnt.

Problemumgehungen:

  1. Nicht-SRV-URI verwenden: Konfigurieren Sie Ihren MongoDB-URI ohne das SRV-Schema, um die Verwendung von SRV zu vermeiden Datensätze.
  2. Update /etc/resolv.conf: Ersetzen Sie die Nameserveradressen durch kompatible Server wie 1.1.1.1 oder 8.8.8.8.
  3. Upgrade Go : Wenn möglich, aktualisieren Sie auf Go 1.12 oder höher, wo das Problem auftritt behoben.

Zusätzliche Hinweise:

  • Dieser Fehler tritt hauptsächlich auf Linux-Systemen in Cloud-Umgebungen auf.
  • Falls Sie zuvor darauf gestoßen sind Wenn dieses Problem auftritt und es sich von selbst löst, ist es möglich, dass der DNS-Server aktualisiert oder ein Patch angewendet wurde Los.

Wenn Sie eine der beiden Problemumgehungen implementieren, sollte Ihre Anwendung in der Lage sein, erfolgreich eine Verbindung zu Ihrer MongoDB Cloud-Datenbank herzustellen.

Das obige ist der detaillierte Inhalt vonWie kann der Fehler „DNS-Nachricht kann nicht entmarshaliert werden' behoben werden, wenn unter Ubuntu eine Verbindung zur MongoDB Cloud von Go aus hergestellt wird?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage