AWS Certified Solutions Architect – Professional — Question 785

A company runs an unauthenticated static website (www.example.com) that includes a registration form for users. The website uses Amazon S3 for hosting and uses Amazon CloudFront as the content delivery network with AWS WAF configured. When the registration form is submitted, the website calls an Amazon API Gateway API endpoint that invokes an AWS Lambda function to process the payload and forward the payload to an external API call.

During testing, a solutions architect encounters a cross-origin resource sharing (CORS) error. The solutions architect confirms that the CloudFront distribution origin has the Access-Control-Allow-Origin header set to www.example.com.

What should the solutions architect do to resolve the error?

Answer options

Correct answer: C

Explanation

The CORS error occurs because the client browser is making an asynchronous request from the static website's origin (www.example.com) to a different origin, which is the Amazon API Gateway endpoint. To resolve this, the API Gateway endpoint itself must be configured to support CORS and return the Access-Control-Allow-Origin header set to www.example.com. Configuring CORS on S3, AWS WAF, or the Lambda function code alone does not address the API Gateway endpoint's need to handle preflight OPTIONS requests and return the correct headers to the browser.