2016-08-02 5 views
0

AWS를 처음 사용했습니다. AWS에서 API를 사용하려고합니다. 그것은 AJAX 요청입니다. 응답은 다음과 같습니다. {“readyState”:0,“responseText”:“”,“status”:0,“statusText”:“error”}AWS - API 호출 - jquery ajax 오류

내 로컬 호스트에서 API를 사용하려고합니다. AWS가 crossDomain 요청을 허용하지 않는다고하는 게시물은 거의 없습니다. 어떻게 로컬에서 테스트합니까?

 var postURL= "http://example.com/user/" + txtMemberId; 

     $.ajax({ 
      url: postURL, 
      crossDomain: true, 
      datatype: "text", 
      success: function (data, textStatus, xhr) { 
       console.log(data); 
      }, 
      error: function (xhr, textStatus, errorThrown) { 
       console.log(xhr); 
      } 
     }); 

상태는 (확인 = 200) 내가 직접 https://console.aws.amazon.com/apigateway에서 API 게이트웨이 콘솔에 브라우저에서

+0

AWS는 크로스 도메인 요청을 허용하지 않습니다. 이 API는 정확히 어떤 서비스에서 실행됩니까? AWS API 게이트웨이? EC2? EC2 인스턴스에서 실행중인 앱이라면 AWS 질문 대신 Apache 또는 Nginx 질문이됩니다. CORS를 사용하기위한 지침을 제공 할 수 있도록 자세한 내용을 제공해야합니다. –

+0

@MarkB 응용 프로그램이 Elastic Bean Stalk에 배포됩니다. – gunner

+0

그런 다음 Elastic Beanstalk에서 API를 실행하는 웹 서버에서 CORS를 활성화해야합니다. –

답변

1

1 로그인 URL을 제공함으로써 API를 칠 경우는 유효한 응답입니다.

2 - API 게이트웨이 콘솔에서 API 아래에서 API를 선택하십시오.

3 - 자원 아래에서 자원을 선택하십시오. 이렇게하면 자원의 모든 메소드에 대해 CORS가 사용 가능해집니다.

4 - 또는이 방법 대신 CORS를 활성화 할 수있는 방법을 선택할 수 있습니다.

5 - 작업 드롭 다운 메뉴에서 CORS 사용을 선택하십시오. 자세한 내용은

:

http://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-cors.html

enter image description here

+0

그는 API 게이트웨이를 사용하지 않습니다. –