하위 도메인과 함께 postman을 사용할 때 "응답을 얻을 수 없습니다"응답


223

postman을 사용하여 API를 테스트하고 있습니다. 요청에 하위 도메인이 포함되어 있지 않으면 모든 것이 좋지만 URL에 하위 도메인을 추가하면이 응답을 얻습니다.

응답을받지 못했습니다

http : //subdomain.localhost : port / api /에 연결하는 중에 오류가 발생했습니다

왜 이런 일이 있었을까요 :

서버가 응답을 보낼 수 없습니다 : 백엔드가 제대로 작동하는지 확인하십시오

자체 서명 된 SSL 인증서가 차단됨 : 설정> 일반에서 'SSL 인증서 확인'을 해제하여이 문제를 해결하십시오.

프록시가 잘못 구성됨 설정> 프록시에서 프록시가 올바르게 구성되었는지 확인하십시오.

요청 시간 초과 : 설정> 일반에서 요청 시간 초과 변경

우편 배달부에서 동일한 URL을 복사하여 브라우저에 붙여 넣으면 적절한 응답을 얻습니다. 우편 배달 부가 하위 도메인과 작동하도록하기 위해 어떤 종류의 구성을해야합니까?


1
런 어웨이 프로세스 서버 측 VPN에 연결되지 않은 것과 같은 시간이 초과되었을 때 주로 시간 초과 문제가 발생했습니다. 요청 헤더 또는 CORS 구성에 누락 된 것이 있습니까?
Ed Meacham

1
이 경우 "나쁜 요청", "무단"또는 이와 유사한 것으로 표시되어서는 안됩니까?
Yahya Hussein

1
라우팅 문제의 경우 40 배가 가장 확실합니다. 화이트리스트 / VPN 문제인 경우 40 배가되어야합니다. 서비스 구성 방법을 모르겠지만 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
@ 케로 커! 당신의 의견은 나를 구한 것입니다! 그것은 나를위한 공간이있는 복사 붙여 넣은 헤더 키였습니다.
saml

56

요청을 보내는 동안 Postman 기본 앱에서 "응답을받을 수 없습니다"메시지가 표시되면 Postman 콘솔 (보기> Postman 콘솔 표시)을 열고 요청을 다시 보내고 콘솔에서 오류 로그를 확인하십시오.

numaanashraf 덕분에


4
매우 도움이됩니다. SSL 인증서를 비활성화해야한다고 생각했지만 잘못된 헤더를 추가했으며 콘솔에서이를 철자했습니다.
MattC

2
이것은 올바른 방향으로 나를 가리켰다. 필자의 경우 콘솔 로그는 Postman이 수행 한 것보다 훨씬 더 명확한 오류를 표시했습니다. "오류 : 헤더 내용의 유효하지 않은 문자 ["권한 부여 "] 경고 :이 요청이 완전히 전송되지 않았으며 필요한 모든 시스템 헤더가 없을 수 있습니다".
피터 W

1
이것은 근본 원인을 이해하고 추측 할뿐 아니라 (예 : "헤더의 유효하지 않은 문자") 도움이되므로 허용되는 답변이어야합니다.
Alexei

17

안녕이 문제는 해결되었습니다.

설정-> 일반-> 요청 시간 초과 ms = 0


당신은 웃을지도 모르지만 v7.17.0 새로 설치하면 이것을 보았습니다 60... 언급하지 않았다면 몇 시간 동안 보지 않을 것입니다 ... 감사합니다!
Koshinae

팔! 효과가 있었는데, 그 이유를 알 수 있습니까?
Pardeep Jain

13

위의 모든 방법이 작동하지 않으면 환경 변수를 확인하고 다음 환경이 설정되어 있지 않은지 확인하십시오. 다른 응용 프로그램에서 필요하지 않은 경우이를 제거하십시오.

HTTP_PROXY
HTTPS_PROXY

참조 링크


2
2019 년에도 여전히 발생한다고 믿을 수 없습니다. 다른 앱에 이러한 환경 매개 변수가 필요한 경우 :(
thReality


6

다음과 같은 오류가 발생하면 여기에 이미지 설명을 입력하십시오

다음을 수행해야합니다.

1 단계 : Postman에서 공구 모양 아이콘을 클릭하고 설정으로 이동 한 다음 프록시 탭으로 이동합니다.

1 단계 렌치 아이콘> 설정> 프록시 탭

2 단계 : 사용자 지정 프록시를 만듭니다. 이 기사에서는 사용자 정의 프록시를 작성하는 방법에 대해 설명합니다. 사용자 정의 프록시를 생성 한 후 프록시 토글 버튼을 끄십시오. 프록시 서버에 61095를 넣고 저에게 효과적이었습니다.

여기에 이미지 설명을 입력하십시오

3 단계 :

성공

성공


4
이 문제가 발생한 로컬 네트워크의 서버에 프록시가 필요한 이유를 설명 할 수 있습니까?
robross0606

5

이 솔루션을 생각해 냈습니다

  1. 우편 배달부에서 설정-> 프록시로 이동하십시오.
  2. 그리고 전역 프록시 구성 해제
  3. 시스템 프록시 사용 여기에 이미지 설명을 입력하십시오

  4. 그리고 Windows 호스트 구성 파일 'C : \ Windows \ System32 \ drivers \ etc \ hosts'로 이동하십시오.

  5. 관리자 모드에서 해당 파일을 엽니 다
  6. 그리고 호스트 파일에 하위 도메인을 추가하십시오 여기에 이미지 설명을 입력하십시오

3

나를 위해 일한 것은 127.0.0.1 subdomain.localhost내 호스트 파일 에 추가 하는 것이 었습니다 . OSX에서 / etc / hosts였습니다. 크롬에서 하위 도메인에 도달 할 수 있었기 때문에 왜 필요한지 확실하지 않습니다.


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 는 이진 X.509 인증서이며 텍스트 (base-64) 인코딩으로 캡슐화됩니다.

OpenSSL을 사용하여 CER 파일을 CRT 파일로 변경할 수 있습니다. 나는 행운이 없었지만 다음과 같습니다.

openssl x509-PEM 정보-certificate.cer -out certificate.crt

또는

openssl x509-정보 DER -cert.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의 하위 도메인이 작동하지 않는지 직접 대답하지는 않지만 누군가를 도울 수 있다는 것을 알고 있습니다.


HTTP 헤더를 보내지 content-encoding: gzip만 컨텐츠가 압축되지 않은 경우에도 Postman은 동일한 오류를 리턴합니다 . 참조 stackoverflow.com/a/52854400/2988107
된장

1

보이지 않는 공간

필자의 경우 우편 배달부에서 인식하지 못하는 보이지 않는 공간이었습니다. 위의 텍스트 문자열은 우편 배달부에 공백이없는 것처럼 렌더링됩니다. SSL 인증서 유효성 검사를 비활성화하고 시스템 프록시는 postman chrome extension (더 이상 사용되지 않을 예정 임)에서 시도했지만 Insomnia를 다운로드하여 시도했을 때 해당 공간이 있던 곳에 빨간색 점이 생겼을 때 복사 중에 가져와야합니다. /풀


1

localhost 대신 실제 도메인 에서이 문제가 발생하여 위의 모든 솔루션을 사용하여 해결할 수없는 사람 .

네트워크 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 용 Postman 버전 6.7.1-Ubuntu 18.04-Linux 4.15.0-43-generic / x64

저도 같은 문제를 겪고과 우연히 내가 교체 http://localhost와 함께http://127.0.0.1 모든 것이 일했다.

내가 etc/hosts에 대한 적절한 항목을했다 localhosthttps://localhost 예상대로 요청을 항상했다.

나는 변화하는 이유 단서가 없다 localhost위해 http함께 127.0.0.1문제를 해결합니다.


0

필자의 경우 MVC는 결과를 직렬화 할 수 없었습니다 (실수로 DTO 대신 모델을 사용했습니다). 간단한 문자열을 전달하도록 디버깅했습니다. 직렬화를 수정하면 모든 것이 나타납니다.


0

필자의 경우 (기업) 프록시는 Postman이 싫어하는 자체 서명 SSL 인증서를 사용하고있었습니다. View-> Show Postman 콘솔을 활성화하고 요청을 다시 시도하여 발견했습니다. 그런 다음 콘솔에 인증서 오류가 표시되었습니다. 설정-> 일반에서 SSL 인증서 확인을 비활성화했습니다.


0

에 대한 더 이상 사용되지 않는 Postman확장 프로그램을 사용하고 있으므로이 Chrome문제를 해결하기 위한 솔루션 은 다음과 같습니다.

  1. 브라우저 자체를 GET사용하여 일부 요청을 호출하십시오 Chrome.
  2. "연결이 개인용이 아닙니다" 오류 페이지 가 나타날 때까지 기다리십시오 .
  3. 를 클릭 ADVANCED한 다음 proceed to [url] (unsafe)링크하십시오.

그런 다음 확장 자체를 통한 요청이 작동해야합니다.


0

제 경우에는 잘못 구성된 서브넷이었습니다. ELB에서 2 개의 서브넷 중 하나만 작동했습니다.

나는 nslookup을 수행하고 반환 된 IP를 직접 컬하여 이것을 알아 냈습니다. 하나만 일했다. 우편 배달부는 잘못 구성된 것을 계속 사용했습니다.


0

나는 같은 문제가 있었다.

시간 초과가 너무 낮게 설정되었습니다. 30 초라고 생각하고 30ms로 변경했습니다. 다시 0으로 설정하고 다시 작동하기 시작했습니다.


0

헤더의 매개 변수가 잘못되어 동일한 "응답을 얻을 수 없습니다"문제가 발생했습니다. 헤더에서 HOST 매개 변수를 제거하여 수정했습니다.

추신 : 불행히도, 나는이 정보를 얻기 위해 다른 소프트웨어를 설치하도록 강요되었습니다. 일반적인 말도 안되는 대신 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.