Cuando trato de buscar usando GET, recibo un error 502, pero cuando intento buscar usando POST, recibo la respuesta.
lambda:
const headers = {'Content-Type':'application/json'} exports.handler = async function(event) { return { statusCode: 200, headers: { headers }, body: JSON.stringify({"ok":"ok"}) } };Buscar:
fetch("https://n3bvznv385.execute-api.us-east-2.amazonaws.com/dev/juegos", { method: 'GET', headers: { 'Content-Type': 'application/json', 'Accept': 'application/json', 'authorizationToken' : '123', } }).then(response => response.json()) .catch(error => console.error('Error:', error)) .then(response => console.log(JSON.parse(response.body)));API Gateway espera el siguiente formato de respuesta de su Lambda cuando utiliza la integración de proxy:
{ "isBase64Encoded": true|false, "statusCode": httpStatusCode, "headers": { "headerName": "headerValue", ... }, "multiValueHeaders": { "headerName": ["headerValue", "headerValue2", ...], ... }, "body": "..." }Sin embargo, está pasando un objeto anidado como encabezados ya que su código se resuelve en esto:
headers: { {'Content-Type':'application/json'} } .
Intente incluir posibles encabezados como este en su lugar:
exports.handler = async function(event) { return { statusCode: 200, headers: headers, body: JSON.stringify({"ok":"ok"}) } };