Ich verwende Postman, um eine API zu testen, die ich habe. Alles ist gut, wenn die Anfrage keine Subdomain enthält. Wenn ich jedoch eine Subdomain zur URL hinzufüge, erhalte ich diese Antwort.
Konnte keine Antwort bekommen
Beim Herstellen einer Verbindung zu http: //subdomain.localhost: port / api / ist ein Fehler aufgetreten.
Warum dies passiert sein könnte:
Der Server konnte keine Antwort senden: Stellen Sie sicher, dass das Backend ordnungsgemäß funktioniert
Selbstsignierte SSL-Zertifikate werden blockiert: Beheben Sie dies, indem Sie die Überprüfung der SSL-Zertifikate unter Einstellungen> Allgemein deaktivieren
Proxy falsch konfiguriert Stellen Sie sicher, dass der Proxy unter Einstellungen> Proxy richtig konfiguriert ist
Anforderungszeitlimit: Ändern Sie das Anforderungszeitlimit unter Einstellungen> Allgemein
Wenn ich dieselbe URL vom Postboten kopiere und in den Browser einfüge, erhalte ich eine angemessene Antwort. Gibt es eine Konfiguration, die ich vornehmen sollte, damit der Postbote mit Subdomains funktioniert?
Antworten:
Gehen Sie zuerst zu Einstellungen in Postman :
Deaktivieren Sie die Überprüfung des SSL-Zertifikats auf der Registerkarte " Allgemein" :
Deaktivieren Sie die globale Proxy-Konfiguration und verwenden Sie den Systemproxy auf der Registerkarte "Proxy":
Stellen Sie das Anforderungszeitlimit auf Null
quelle
Ich hatte das gleiche Problem. Es wurde durch eine neue Zeile am Ende des Header-Werts "Authorization" verursacht, die ich manuell festgelegt hatte, indem ich das Inhaber-Token kopierte (das versehentlich die neue Zeile am Ende enthielt).
quelle
Cookie
Wenn Sie beim Senden Ihrer Anfrage von nativen Postman-Apps die Meldung "Keine Antwort erhalten" erhalten, öffnen Sie die Postman-Konsole (Ansicht> Postman-Konsole anzeigen), senden Sie die Anfrage erneut und suchen Sie in der Konsole nach Fehlerprotokollen.
Danke an numaanashraf
quelle
Hallo, dieses Problem ist für mich behoben.
Einstellung -> Allgemein -> Requesttimeout in ms = 0
quelle
60
... Wenn Sie es nicht erwähnt hätten, würde ich dort stundenlang nicht suchen ... Danke!Wenn alle oben genannten Methoden nicht funktionieren, überprüfen Sie Ihre Umgebungsvariablen und stellen Sie sicher, dass die folgenden Umgebungen nicht festgelegt sind. Wenn diese festgelegt sind und von keiner anderen Anwendung benötigt werden, entfernen Sie sie.
Referenz - Link
quelle
Für mich war es der http: // localhost anstelle von https: // localhost .
quelle
Wenn der folgende Fehler angezeigt wird,
Sie müssen Folgendes tun.
Schritt 1: Klicken Sie in Postman auf das Schraubenschlüsselsymbol, gehen Sie zu den Einstellungen und dann zur Registerkarte Proxy.
Schritt 2: Erstellen Sie einen benutzerdefinierten Proxy. In diesem Artikel wird erläutert, wie Sie einen benutzerdefinierten Proxy erstellen. Stellen Sie nach dem Erstellen des benutzerdefinierten Proxys sicher, dass Sie die Schaltfläche zum Umschalten des Proxys deaktivieren. Ich habe 61095 für den Proxyserver eingegeben und es hat bei mir funktioniert.
Schritt 3 :
Erfolg
quelle
Ich habe diese Lösung gefunden
auf dem Use System Proxy
Wechseln Sie zur Windows-Host-Konfigurationsdatei 'C: \ Windows \ System32 \ drivers \ etc \ hosts'.
quelle
Für mich funktionierte das Hinzufügen
127.0.0.1 subdomain.localhost
zu meiner Host-Datei. Unter OSX war das / etc / hosts. Ich bin mir nicht sicher, warum das notwendig war, da ich die Subdomain von Chrom aus erreichen konnte.quelle
quelle
Für mich war es diese Route, die ich auf meinem Knotenserver anrief, die nichts zurückgab. Hinzufügen
Auf die Route, die ich anrief, wurde das Problem behoben.
quelle
Sie haben erwähnt, dass Sie ein CER-Zertifikat verwenden.
Laut der Postman-Seite über Zertifikate.
Wählen Sie Ihre Client-Zertifikatdatei im Feld CRT-Datei aus. Derzeit unterstützen wir nur das CRT-Format. Unterstützung für andere Formate (wie PFX) wird in Kürze verfügbar sein.
Der Name der Erweiterung CER, CRT macht das Zertifikat nicht zu diesem Zertifikatstyp, dies sind jedoch die ausgenommenen Erweiterungsnamen.
CER ist ein X.509-Zertifikat in binärer Form, DER-codiert.
CRT ist ein binäres X.509-Zertifikat, das in Textcodierung (Base-64) gekapselt ist.
Mit OpenSSL können Sie eine CER-Datei in eine CRT-Datei ändern. Ich hatte kein Glück damit, aber es sieht so aus.
oder
quelle
Keine dieser Lösungen funktioniert bei mir. Der Postbote sendet keine Anfrage an den Server, da der Postbote den Host nicht findet. Also, wenn Sie Ihre / etc / hosts auf ändern
127.0.0.1 localhost
127.0.0.1 subdomain.localhost
Für mich geht das.
quelle
Für mich war das Problem, dass das
Content-Length
zu groß war. Ich habe den Inhalt des Körpers in NotePad ++ platziert und die Zeichen gezählt und diese Zahl eingegeben,PostMan
und dann hat es funktioniert.Ich weiß, dass es nicht direkt antwortet, warum die Subdomain des Ops nicht funktioniert hat, aber es könnte jemandem helfen.
quelle
content-encoding: gzip
, der Inhalt jedoch nicht komprimiert wird. Siehe stackoverflow.com/a/52854400/2988107In meinem Fall waren es unsichtbare Leerzeichen, die der Postbote nicht erkannte. Die obige Textfolge wird als Leerzeichen im Postboten dargestellt. Ich habe die Validierung des SSL-Zertifikats deaktiviert, und der Systemproxy hat sogar versucht, die Postman-Chrome-Erweiterung (die bald veraltet sein wird) zu testen. Als ich jedoch Insomnia heruntergeladen und ausprobiert habe und diese roten Punkte an der Stelle angezeigt wurden, an der sich diese Leerzeichen befanden, müssen sie während des Kopierens dort angekommen sein /Einfügen
quelle
Für alle, die dieses Problem mit einer realen Domain anstelle von localhost hatten und es mit ANY OF THE OBEN nicht lösen konnten Lösungen .
Versuchen Sie, Ihr Netzwerk-DNS (WIFI oder LAN) in ein anderes DNS zu ändern. Für mich habe ich Google DNS 8.8.8.8, 8.8.4.4 verwendet und es hat funktioniert!
quelle
Die Lösung ist sehr einfach, wenn Sie die asp.net Core 2-Anwendung verwenden. Innerhalb der ConfigureServices- Methode in der Datei startup.cs wird diese ganze Zeile gespeichert
quelle
Sie müssen nur SSL aktivieren deaktivieren, um Ihre Anfrage zu senden.
Proxy und andere kommen mit verschiedenen Fehlern.
quelle
Nach all den oben genannten Methoden wie dem Deaktivieren der Überprüfung von SSL-Zertifikaten, dem Aktivieren von Nur Systemproxy verwenden und dem Entfernen der Systemumgebungsvariablen HTTP_PROXY und HTTPS_PROXY hat es funktioniert.
Hinweis: Die Postman-App musste neu gestartet werden, da die Umgebungsvariablen geändert wurden.
quelle
Das Deaktivieren der Proxy- und SSL-Zertifikatüberprüfung hat bei mir nicht funktioniert.
Das Deaktivieren der PROXY-Umgebungsvariablen hat den Trick getan.
Wechseln Sie in das Verzeichnis, in dem Postman installiert ist, und gehen Sie dann wie folgt vor:
quelle
Postman für Linux Version 6.7.1 - Ubuntu 18.04 - Linux 4.15.0-43-generic / x64
Ich hatte das gleiche Problem und ich zufällig ersetzt
http://localhost
mithttp://127.0.0.1
und alles funktionierte.Ich
etc/hosts
hatte die richtigen Einträge fürlocalhost
undhttps://localhost
Anfragen funktionierten immer wie erwartet.Ich habe keine Ahnung , warum Wechsel
localhost
fürhttp
mit127.0.0.1
dem Problem gelöst.quelle
In meinem Fall konnte MVC die Ergebnisse nicht serialisieren (ich habe versehentlich ein Modell anstelle von DTO verwendet). Ich debuggte bis zur Übergabe einer einfachen Zeichenfolge, die funktionierte. Nachdem ich die Serialisierung repariert hatte, kam alles auf.
quelle
In meinem Fall verwendete der (Unternehmens-) Proxy ein selbstsigniertes SSL-Zertifikat, das Postman nicht mochte. Ich habe es entdeckt, indem ich View-> Show Postman Console aktiviert und die Anfrage erneut versucht habe. Die Konsole zeigte dann den Zertifikatfehler an. Unter Einstellungen-> Allgemein habe ich die Überprüfung des SSL-Zertifikats deaktiviert.
quelle
Die Lösung für mich, da ich die veraltete
Postman
Erweiterung für verwendeChrome
, um dieses Problem zu lösen, musste ich:GET
Anfrage über denChrome
Browser selbst auf.ADVANCED
und dann auf denproceed to [url] (unsafe)
Link.Danach sollten Anforderungen über die Erweiterung selbst funktionieren.
quelle
In meinem Fall war es ein falsch konfiguriertes Subnetz. Nur eines der beiden Subnetze in der ELB funktionierte.
Ich habe dies herausgefunden, indem ich ein nslookup durchgeführt und versucht habe, die zurückgegebenen IPs direkt zu locken. Nur einer hat funktioniert. Der Postbote benutzte einfach weiter den falsch konfigurierten.
quelle
Ich hatte das gleiche Problem.
Es stellte sich heraus, dass meine Zeitüberschreitung zu niedrig eingestellt war. Ich habe es auf 30 ms geändert und dachte, es wären 30 Sekunden. Ich habe es wieder auf 0 gesetzt und es hat wieder funktioniert.
quelle
Ich habe das gleiche Problem "Konnte keine Antwort erhalten" wegen eines falschen Parameters im Header erhalten. Ich habe es behoben, indem ich den Parameter HOST aus dem Header entfernt habe.
PS: Leider wurde ich gezwungen, die andere Software zu installieren, um diese Informationen zu erhalten. Es sollte großartig sein, diese Fehlermeldung von Postman zu erhalten, anstatt allgemeinen Unsinn zu bekommen.
quelle
In meinem Fall habe ich vergessen, den Wert der Variablen im Feld "CURRENT VALUE" festzulegen.
quelle
In meinem Fall bestand das Problem darin, dass die API-URL für die UAT- Umgebung mit HTTP anstelle von https beginnt . Außerdem weist das Backend unterschiedliche Ports für HTTP und https zu.
beispielsweise,
http://10.12.12.31:2001/api/example . - ist richtig für mich
https://10.12.12.31:2002/api/example . - ist falsch für mich
Weil ich https und 2002 Port verwendet habe, um die UAT-Umgebung zu erreichen. Ich bekomme also keinen Antwortfehler beim Postboten.
quelle
Ich habe gerade diesen Fehler erlebt. In meinem Fall war der Weg zu lang. So eine URL gab mir diesen Fehler beim Postboten (falsches Beispiel)
wohingegen
hat gut funktioniert.
Hoffe es hilft jemandem, der versehentlich so weit gelesen hat ...
quelle