10

api 키를 생성하여 내 기능에 추가했습니다. 나는 다음 API를 배치하고 testeed하지만 여전히 얻을 수있다 :아마존 api 게이트웨이에서 API 키 사용

"message": "Forbidden" 

는 어떻게 JSON 요청으로 키를 통과 할 내가 "X-API 키"를 사용하여왔다으로 "theKey을?"

+0

[post] (http://www.awslessons.com/2017/aws-api-gateway-adding-apikey-requests/)이 나를 설명했습니다. – phouse512

답변

13

x-api-key 매개 변수 (즉, 그것이 JSON 본문에 추가되지 않습니다)는 HTTP 헤더 매개 변수로 전달과 함께 API 키를 링크가 누락되지 않습니다 바랍니다. HTTP 헤더를 전달하는 방법은 사용하는 HTTP 클라이언트에 따라 다릅니다.

$ curl -X POST -H "x-api-key: theKey" -H "Content-Type: application/json" -d '{"key":"val"}' https://[api--id].execute-api.[region].amazonaws.com 
: 당신은 곱슬 곱슬하고 JSON 페이로드를 POST 가정 사용하는 경우, 요청이 (당신이 당신의 API의 AWS 지역과 실제 ID로 [api-id][region] 교체)과 같이 보일 것입니다 예를 들어

,

+0

예 NSMutableURLRequest * 요청을 ios sdk에서 사용합니다. 그러면 키를 추가 할 수 있고 작동합니다. – cdub

12

API 사용 계획을 추가하고 계획을 API 단계에 연결해야했습니다.

AWS의 최근 변경 사항 인 경우 키를 API에 연결할 수있는 유일한 방법은 이와 같습니다.

+2

방금 ​​같은 문제가 발생했습니다. 무슨 일이 일어나고 있는지 30 분이나 걸렸어. 이 나쁜 메시지는'{ "message": "금지 된"}'전혀 도움이되지 않았습니다. AWS에 감사드립니다 !! – kev

+1

클래식 AWS. 문서의 중요한 부분을 놓치고 오류 메시지에있는 문제점이나 해결 방법을 알려주지 마십시오. 고마워,이게 나를 위해 해결 됐어. –

5

'API 키 필수'옵션을 true로 설정하면 아래를 확인하십시오.

  1. API 헤더에 'x-api-key'HTTP 헤더 매개 변수를 전달해야합니다.

  2. API 키를 만들어야했습니다.

  3. 또한 API 게이트웨이 콘솔에서 API 키 사용 계획을 확인해야합니다.

+0

감사합니다. 나는 aws 문서가 이것을 언급하는 것이 명확하지 않다고 생각한다. –