サブドメインでpostmanを使用すると、「応答を取得できませんでした」応答


223

私はpostmanを使用してAPIをテストしていますが、リクエストにサブドメインが含まれていない場合は問題ありませんが、URLにサブドメインを追加すると、この応答が返されます。

応答がありませんでした

http://subdomain.localhost:port / api /への接続中にエラーが発生しました

なぜこれが起こったのか:

サーバーが応答を送信できませんでした:バックエンドが正しく動作していることを確認してください

自己署名SSL証明書がブロックされています:設定>全般で「SSL証明書の検証」をオフにして修正してください

プロキシが正しく構成されていない[設定]> [プロキシ]でプロキシが正しく構成されていることを確認します

リクエストタイムアウト:[設定]> [全般]でリクエストタイムアウトを変更する

postmanから同じURLをコピーしてブラウザーに貼り付けた場合、適切な応答が得られますが、postmanをサブドメインで機能させるために実行する必要がある構成の種類はありますか?


1
VPNに接続されていないような、サーバー側で暴走するプロセスがあったときに、主にタイムアウトの問題に遭遇しました。リクエストヘッダーまたはCORS構成に何か不足している可能性がありますか?
Ed Meacham 2017

1
これが事実である場合、私は「悪い要求」、「無許可」または同様の何かのようになってはいけませんか?
Yahya Hussein

1
ルーティングの問題では、40倍になることは間違いありません。ホワイトリスト/ VPNの問題である場合は、40xも取得する必要があります...サービスの構成方法はわかりませんが、Postmanを使用すると、要求が別の発信元から送信されるため、ホワイトリストの問題が発生する可能性があります。サーバー側で基本的なデバッグを実行して、エンドポイントのコントローラーに到達しているかどうかを確認できるはずです...
Ed Meacham

1
ホワイトリストの問題である場合、localhost / apiでは機能し、subdomain.localhost / apiでは機能しないのはわかりますか。いいえ、コントローラーに到達していません
Yahya Hussein

1
多くの場合、Postmanではなく、アプリケーションに問題があると思います。アプリケーションをデバッグし、Visual Studioの出力ウィンドウをチェックしたところ、エンティティ間に参照ループがあることがわかりました。私がこれを修正した後、問題はなくなりました。
Desell

回答:


480

最初にPostmanの[設定]に移動します。

  1. [ 全般]タブでSSL証明書の検証をオフにします。

  2. [プロキシ]タブでグローバルプロキシ構成オフにしシステムプロキシ使用します

  3. 作るリクエストのタイムアウトをゼロに


すべての手順を実行したことがありますが、今私はそれが私のために機能するように変更しました
Ramesh R

1
あなたは、SSLオプションを持っていない場合は、ここから郵便配達をダウンロードする必要があります。www.getpostman.com
アブドラタハン

14
ssl認証をオフにするだけで
うまくいき

4
それは魅力のように機能しましたが、私の混乱は、なぜそれがQAには機能したが、DEVには機能しなかったのかです。とにかく、どちらも正常に動作します。再度、感謝します。
raja777m

26
エラーメッセージが言ったのと同じことを文字通りあなたに伝えるときに、この回答が多くの賛成票を獲得する方法が大好きです。
georgiaboy82

224

同じ問題がありました。「Authorization」ヘッダーの値の最後にある改行が原因でした。これは、無記名トークンをコピーして貼り付けて手動で設定したものです(誤って末尾に改行が含まれていました)。


14
ここでも同じですが、私のヘッダーはカスタムでした。余分な改行を削除しました。すべて正常です。
Xiao

やや関連:すべてのリクエストに共通のurl変数を使用して、リクエストをコレクションにグループ化しました。変数名を誤って消去し(URL値がまだそこにあったとしても)、OPに記載されているエラーが発生しました。
Jesuisme

3
これはどのヘッダーでも発生する可能性があります。Cookieヘッダーで私に起こった
Kerooker

4
これは私の命を救った!
neeohw

2
@Kerooker!あなたのコメントは私を救ったものです!それは私のために先行スペースがあったコピー貼り付けられたヘッダーキーでした。
saml

56

リクエストの送信中にPostmanネイティブアプリから「応答がありませんでした」というメッセージが表示された場合は、Postman Consoleを開き([表示]> [Postman Consoleを表示])、リクエストを再送信し、コンソールでエラーログを確認します。

numaanashrafのおかげで


4
非常に役立ちます。私はssl証明書を無効にする必要があると思いますが、不正なヘッダーを追加しており、コンソールがそれをスペルアウトしてくれました。
MattC、

2
これは私を正しい方向に向けました。私の場合、コンソールログはPostmanよりもはるかに明確なエラーを示しました。
Peter W

1
これは、それを推測するだけでなく根本的な原因を理解するのに役立つので、受け入れられる答えになるはずです(たとえば、「ヘッダーの無効な文字」)。
アレクセイ

17

こんにちはこの問題は私のために解決されました。

設定->一般-> Requesttimeout(ミリ秒)= 0


笑うかもしれませんが、v7.17.0の新規インストールではこれが発生しました60...言及していなければ、私は何時間もそこを見ていませんでした...ありがとうございます!
Koshinae

ブーム!うまくいきました、この理由を教えてください。
Pardeep Jain

13

上記のすべての方法が機能しない場合は、環境変数を確認し、次の環境が設定されていないことを確認してください。それらが設定されていて、他のアプリケーションで必要とされていない場合は、それらを削除します。

HTTP_PROXY
HTTPS_PROXY

参照 リンク


2
2019年にまだ発生するなんて信じられません。他のアプリがそれらの
環境パラメーターを


6

次のエラーが発生した場合、 ここに画像の説明を入力してください

次のことを行う必要があります。

ステップ1:Postmanで、レンチアイコンをクリックし、設定に移動して、[プロキシ]タブに移動します。

ステップ1レンチアイコン>設定>プロキシタブ

手順2:カスタムプロキシを作成します。この記事では、カスタムプロキシを作成する方法について説明します。 カスタムプロキシを作成したら、必ずプロキシ切り替えボタンをオフにしてください。プロキシサーバー用に61095を入れてみました。

ここに画像の説明を入力してください

ステップ3:

成功

成功


4
この問題が発生しているローカルネットワーク上のサーバーにアクセスするためにプロキシが必要になる理由を説明できますか?
robross0606

5

私はこの解決策を思いつきました

  1. 郵便配達で設定に行く->プロキシ
  2. そしてグローバルプロキシ設定をオフ
  3. システムプロキシの使用 ここに画像の説明を入力してください

  4. そして、Windowsホスト構成ファイル「C:\ Windows \ System32 \ drivers \ etc \ hosts」に移動します

  5. そのファイルを管理者モードで開きます
  6. そして、サブドメインをhostsファイルに追加します ここに画像の説明を入力してください

3

私にとってうまくいったのは127.0.0.1 subdomain.localhost、ホストファイルに追加することでした。OSXでは/ etc / hostsでした。Chromeからサブドメインにアクセスできるので、なぜそれが必要だったのかわかりません。


2
  1. 郵便配達で設定に行く->プロキシ
  2. そしてグローバルプロキシ設定をオフ

ここに画像の説明を入力してください


1

私にとって、ノードサーバーで呼び出していたルートは何も返さなかったのです。追加

    return res.status(200).json({
        message: 'success!',
        response: 'success!'
    });//

私が呼んでいたルートに問題を解決しました。


1

CER証明書を使用しているとのことですが、

証明書に関する郵便配達員のページによると。

[CRTファイル]フィールドでクライアント証明書ファイルを選択します。現在、CRT形式のみをサポートしています。他の形式(PFXなど)のサポートはまもなく開始されます。

拡張CER、CRTの名前は、証明書をそのタイプの証明書にしませんが、これらは除外された拡張名です。

CERは、DERエンコードされたバイナリ形式のX.509証明書です。

CRTは、テキスト(base-64)エンコーディングでカプセル化されたバイナリX.509証明書です。

OpenSSLを使用して、CERファイルをCRTファイルに変更できます。うまくいきませんでしたが、こんな感じです。

openssl x509 -inform PEM -in certificate.cer -out certificate.crt

または

openssl x509 -inform DER -in certificate.cer -out certificate.crt


1

これらの解決策はどれも私にはうまくいきません。postmanはホストを見つけられないため、postmanはサーバーに要求を送信していません。したがって、/ etc / hostsを次のように変更した場合 127.0.0.1 localhost 127.0.0.1 subdomain.localhost

わたしにはできる。


1

私にとっての問題は、それContent-Lengthが大きすぎるということでした。本文の内容をNotePad ++に入れて文字を数え、その数字をPostManてみました。

opのサブドメインが機能しなかった理由を直接回答しないことは知っていますが、誰かを助けるかもしれません。


Postmanは、HTTPヘッダーを送信しても同じエラーを返しますcontent-encoding: gzipが、コンテンツはgzipされていません。参照してくださいstackoverflow.com/a/52854400/2988107
味噌

1

見えない空間

私の場合、郵便配達員が認識しないのは見えないスペースでした。上記のテキストの文字列は、郵便配達員のスペースなしでレンダリングされます。SSL証明書の検証を無効にし、システムプロキシでpostman chrome拡張機能(廃止予定)を試しましたが、Insomniaをダウンロードして試したところ、スペースがある場所に赤い点が表示されたため、コピー中にそこに到達したはずです/ペースト


1

で、この問題を経験した人のための本当のドメインの代わりに、ローカルホストと使用して、それを解決することができませんでしたTHE上記のいずれかをのソリューション。

ネットワークDNS(WIFIまたはLAN)を他のDNSに変更してみてください。私は、Google DNS 8.8.8.8、8.8.4.4を使用しましたが、うまくいきました。

ここに画像の説明を入力してください


1

asp.netコア2アプリケーションを使用している場合、解決策は非常に簡単です。このすべての行のstartup.csファイル内のConfigureServicesメソッド内

services.AddMvc()
                .SetCompatibilityVersion(CompatibilityVersion.Version_2_1)
                .AddJsonOptions(x => x.SerializerSettings.ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore);


0

SSL証明書の検証をオフにする、システムプロキシのみをオンにする、HTTP_PROXYおよびHTTPS_PROXYシステム環境変数を削除するなど、上記のすべての方法を実行した後、それは機能しました。

注:環境変数が変更されたため、Postmanアプリを再起動する必要がありました。


0

プロキシとSSL証明書の検証をオフにするとうまくいきませんでした。

PROXY環境変数の設定を解除するとうまくいきました。

export http_proxy=
export ftp_proxy=
export https_proxy=

Postmanがインストールされているディレクトリに移動し、次のようにします。

./Postman

0

Linuxバージョン6.7.1のPostman-Ubuntu 18.04-Linux 4.15.0-43-generic / x64

私は同じ問題を抱えていて、偶然に交換http://localhosthttp://127.0.0.1てすべてがうまくいきました。

etc/hostsには適切なエントリがlocalhostあり、https://localhostリクエストは常に期待どおりに機能しました。

私は、変更理由を手掛かりがないlocalhostためhttp127.0.0.1問題を解決します。


0

私の場合、MVCは結果をシリアル化できませんでした(誤ってDTOの代わりにモデルを使用しました)。簡単な文字列を渡すまでデバッグしましたが、うまくいきました。シリアル化を修正したら、すべてが出てきました。


0

私の場合、(企業の)プロキシはPostmanが嫌った自己署名SSL証明書を使用していました。[表示]-> [Postmanコンソールを表示]をアクティブにしてリクエストを再試行することで、それを発見しました。次に、コンソールに証明書エラーが表示されました。[設定]-> [一般]で、SSL証明書の検証を無効にしました。


0

私がの非推奨のPostman拡張機能を使用しているためChrome、この問題を解決するための解決策は次のとおりです。

  1. GETを使用していくつかのリクエストを呼び出しますChromeブラウザ自体ます。
  2. エラーページ「あなたの接続はプライベートではありません」を待ちますます。
  3. クリックしADVANCEDproceed to [url] (unsafe)リンクします。

この後、拡張自体を介したリクエストは機能するはずです。


0

私の場合、それは誤って構成されたサブネットでした。ELBの2つのサブネットのうち1つだけが機能しました。

nslookupを実行し、返されたIPを直接カールしようとすることでこれを理解しました。たった一人だけが働いた。Postmanは誤って設定されたものを使い続けました。


0

同じ問題がありました。

タイムアウトの設定が低すぎることがわかりました。30秒だと思って30msに変更しました。私はそれを0に戻し、それが再び機能し始めました。


0

ヘッダーのパラメーターが間違っているため、同じ「応答を取得できませんでした」という問題が発生しました。ヘッダーからパラメーターHOSTを削除して修正しました。

PS:残念ながら、私はこの情報を得るために他のソフトウェアをインストールするように強いられました。一般的なナンセンスを取得するのではなく、Postmanからこのエラーメッセージを取得することをお勧めします。



0

私の場合、問題はUAT環境の場合、API URLがhttpsではなくHttpで始まることでした。また、バックエンドはHttpとhttpsの両方に異なるポートを割り当てます。

例えば、

http://10.12.12.31:2001/api/example。-私には正しい

https://10.12.12.31:2002/api/example。-私には間違っている

UAT環境にアクセスするためにhttpsおよび2002ポートを使用していたためです。そのため、郵便配達員で応答エラーを取得できませんでした


0

このエラーが発生しました。私の場合、パスは長すぎました。だからそのようなURLは私に郵便配達人にこのエラーを与えました(偽の例)

http://127.0.0.1:5000/api/batch/upload_import_deactivate_from_ready_folder

一方

http://127.0.0.1:5000/api/batch/upld_impt_deac_ready_folder

うまくいきました。

それが誤ってそれまで読んだ人を助けることを願っています...

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.