Warum gibt Consul Discovery auf dem lokalen Host https zurück, auf dem Server aber nur http?

Warum gibt Consul Discovery auf dem lokalen Host https zurück, auf dem Server aber nur http?

Ich habe zwei Szenarien von Hashicorp Consul getestet

1. Ich habe die Diensterkennung durch Hashicorp Consul auf .net7 implementiert, aber wenn ich die Dienstadresse von Consul abrufen möchte, wird nur das HTTP dieses Dienstes zurückgegeben, nicht das HTTPS. Ich habe meine Dienste per Registrator auf Docker registriert und entdecke auch Dienste per .net Dockerized.

2. Aber ich teste dieses Szenario auf meinem lokalen Host. Ich habe zwei APIs auf dem lokalen Host implementiert und eine davon bei Consul registriert, das auf einem Docker-Server lief. Ich habe gesehen, dass, als ich API1 von API2 über Consul entdecke, ich https von API1 angefordert habe, aber Consul wechselt und ändert es in http, und es funktioniert, und ich bekomme das Ergebnis davon. Aber die gleiche Situation auf meinem Server (Szenario 1) funktioniert nicht

meine Implementierung:

Dienste.AddServiceDiscovery(Optionen => Optionen.UseConsul());

//HttpClinetFactory-Dienste.AddHttpClient("DiscoveryRandom").ConfigurePrimaryHttpMessageHandler(() => neuer HttpClientHandler { ServerCertificateCustomValidationCallback = (Absender, Zertifikat, Kette, SSL-Richtlinienfehler) => true, }).AddHttpMessageHandler().AddServiceDiscovery();

// Ich injiziere: IHttpClientFactory clientFactory

_httpClient = clientFactory.CreateClient("DiscoveryRandom");

_httpClient.BaseAddress = neue Uri($"https://{ServiceName on consul}");

// meine App-Einstellungen für Szenario 1, diese Registrierung wird von Docker auf dem Server durchgeführt und ich habe sie gerade über Consul überprüft:

"$schema": "https://steeltoe.io/schema/latest/schema.json", "Consul": { "Host": "10.200.8.178", "Discovery": { "Registrieren": false } }

// meine App-Einstellungen für Szenario 2, die ich selbst auf dem lokalen Host registriert habe:

// Einstellung für API1 zur Registrierung bei Consul

"$schema": "https://steeltoe.io/schema/latest/schema.json", "Consul": { "Host": "10.200.8.178", "Discovery": { "Register": true, "serviceName": "TestConsul", "hostName": "localhost", "port": 7141, "deregister": false } }

// und Einstellung für Service Discovery API2

"$schema": "https://steeltoe.io/schema/latest/schema.json", "Consul": { "Host": "10.200.8.178", "Discovery": { "Registrieren": false } }

verwandte Informationen