问题
I have a Lambda function that has an exposed API Gateway endpoint, and I can get the URL for that via the AWS console. However, I would like to get that URL via API call. Neither the Lambda API documentation nor the API Gateway documentation seem to have that information (or perhaps I've missed it), so is this even possible in the first place?
回答1:
Your API Gateway endpoint URL doesn't get exposed via an API call. However, since the URL of the API follows a certain structure, you could get all the necessary pieces and create the URI within your code.
https://API-ID.execute-api.REGION.amazonaws.com/STAGE
You could use apigateway:rest-apis to get your API-ID and restapi:stages to get the stage corresponding identifier.
回答2:
I don't really understand the above answer (maybe it's outdated?).
The absolute easiest way:
- Choose "API Gateway" under "Services" in AWS.
- Click on your API.
- Click on "Stages".
- Choose the stage you want to use
- Now you can see the entire URL very visible inside a blue box on the top with the heading "Invoke URL"
回答3:
Following up on @larschanders comment, if you create the gateway using CloudFormation, the endpoint URL is surfaced as one of the stack outputs.
回答4:
To get the API endpoint ,
first step is to deploy the API on a stage(dev/test/prod) then you will get the invoke url
来源:https://stackoverflow.com/questions/36560504/how-do-i-find-the-api-endpoint-of-a-lambda-function