Я реализовал AWS лямбда-метод, чтобы узнать, что я могу с ним сделать.Что у меня сейчас:
- Сама AWS лямбда
- API-шлюз
- Amazon CloudWatch Logs
В настройках API-шлюза я вижу следующеепараметры:
За этой лямбдой у меня есть Java-код, реализующий com.amazonaws.services.lambda.runtime.RequestStreamHandler и REST-контроллер за ним, что-то вроде этого:
@Path("/tester")
public class TestResource {
private static final Logger LOG = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
private TestRepository testRepository;
public void setTestRepository(TestRepository testRepository) {
this.testRepository = testRepository;
}
@POST
@Path("/{identifier}")
@Produces(MediaType.TEXT_PLAIN)
@Consumes(MediaType.WILDCARD)
public Response store(@PathParam("identifier") String identifier, @QueryParam("hashcode") String hashcode) {
try {
this.testRepository.store(identifier, hashcode);
} catch (RuntimeException ex) {
LOG.error("Failed to store pair {}, {}", identifier, hashcode, ex);
throw new InternalServerErrorException(ex);
}
return Response.noContent().build();
}
}
Теперь я попытался вызвать этот сервис через Почтальон:
Вариант 1 - вызвать то, что я видел в API Gateway:
Результат: 404 не найден, см. Соответствующие журналы в AWS CloudWatch.
Вариант 2 - вызвать мой метод:
Результат: 403 Запрещено, нет журналов в AWS CloudWatch.
{
"message": "Missing Authentication Token"
}
Я полностью понимаю, почему Вариант 1 не работал, но что пошло не так с Вариант 2 ?Не могли бы вы помочь мне понять, что я пропустил?