У меня проблемы при попытке отправить данные через POST в форму, зарегистрированную в Mautic.
Моя идея состоит в том, что из ионного приложения я могу отправлять данные, собранные из формы, в mautic, но всегда выдает ту же ошибку, когда я выполняю POST из кода (поскольку почтальон работает правильно). Я отлаживаю ошибки, я показываю их ниже:
Ошибки, которые появляются у меня в консоли Chrome
POST https://mautic.mydomain.com/form/submit?formId=1 400
Ошибки, которые появляются в логическом журнале
mautic.ERROR: необработанное исключение PHP Symfony \ Component \ HttpKernel \ Exception \ BadRequestHttpException: «получено неверное сообщение json» в /var/www/vhosts/mydomain.com/mautic/vendor/friendsofsymfony/rest-bundle/OS RestBundle / EventListener /BodyListener.php строка 127 {"исключение": "[объект] (Symfony \ Component \ HttpKernel \ Exception \ BadRequestHttpException (код: 0): неверное сообщение json, полученное на /var/www/vhosts/mydomain.com/ mautic / vendor /friendsofsymfony/rest-bundle/FOS/RestBundle/EventListener/BodyListener.php:127) "} []
От Почтальона формат данных, который работает, таков:
{ "mauticform": {"nombre":"Alberto", "formId": 1} }
Тесты, которые я сделал:
- Я определил заголовки, чтобы на сервере не было проблем с CORS
- Я также проверил, что форма активна и что имя поля - «Имя»
- Я пытался передать ему объект без кавычек
- Я пытался передать значения без ключа "mauticform"
Это пример кода, который отправляет запрос в mautic
sendToMautic(){
const url = 'https://mautic.mydomain.com/form/submit?formId=1';
let datos = {
"mauticform": {"nombre":"Alberto", "formId": "1"}
}
this.http.post(url, datos, {
'Accept': 'application/json',
'Content-Type': 'application/json',
})
.then(data => {
console.log('ok', data);
})
.catch(error => {
console.log('Error', error);
});
}