I have a Lambda function built and deployed which accepts a collection of data in the request, processes and returns an HTML string for presentation to the user's browser. I have the Lambda function working. the function is to be integrated with API gateway. The return to the user is represented as a JSON object.
the python code is
return {
"statusCode": 200,
"body": userResponse
}
where userResponse would contain "<html>...<body>...</body></html>.
I have an API set up in API gateway, which is implemented using Lambda Proxy Integration. It appears all I can do is define a model, but no body mapping template.
When I submit my querystring to the API endpoint, I get a response displayed in my web browser which is the html text as in
<html>
<head>
<meta http-equiv="Content-Type" content="text/html"/>
<meta charset="utf-8" />
</head>
<body>
...
</body>
</html>
the html is not rendered by the browser.
If I save the file to my machine as an html file, it is correctly rendered in the browser.
So, how do I tell API gateway to return html to the web browser with Lambda proxy integration turned on? What does the Model look like? Where does the body mapping happen?
thanks