Когда я проверяю конечную точку шлюза API через почтальона, я получаю ответ 200, отправляя json в теле.
И тело читается в лямбда-выражении так:
const user = JSON.parse(event.body);
Но когда я хочу проверить лямбду через консоль, используя тестовое событие, я всегда получаю ошибку во время выполнения.
{ "errorType": "SyntaxError", "errorMessage": "Unexpected token u in JSON at position 0", "trace": [
"SyntaxError: Unexpected token u in JSON at position 0",
" at JSON.parse (<anonymous>)",
" at Runtime.module.exports.func [as handler] (/var/task/createUser.js:10:23)",
" at Runtime.handleOnce (/var/runtime/Runtime.js:66:25)",
" at process._tickCallback (internal/process/next_tick.js:68:7)" ]
Я попробовал и строковую + экранированную версию json в тестовом событии, и простой объект json
"{\"email\":\"jane.smith@enterprise.co.uk\",\"givenName\":\"Jane\",\"familyName\":\"Smith\",\"regionId\":\"59BCCF09-9ADD-8876-6FA6-8404B30E7B80\",\"userRoles\":[{\"establishmentId\":\"59BCCF09-9ADD-8876-6FA6-8404B30E7B80\",\"role\":\"admin\"}]}"
Единственное, что работает, хотя это не анализироватьв коде, который является радикальным и неосуществимым.
const user = event.body;
Поскольку тест веб-API теперь не удается!