0

尝试通过 POST 将数据发送到在 Mautic 中注册的表单时遇到问题。

我的想法是,从离子应用程序中,我可以将从表单收集的数据发送到 mautic,但是当我从代码执行 POST 时,它总是给我同样的错误(因为邮递员工作正常)。我正在调试错误,我在下面显示它们:

Chrome 控制台中出现的错误

发布https://mautic.mydomain.com/form/submit?formId=1 400

mautic 日志中出现的错误

mautic.ERROR: Uncaught PHP Exception Symfony \ Component \ HttpKernel \ Exception \ BadRequestHttpException: "Invalid json message received" at /var/www/vhosts/mydomain.com/mautic/vendor/friendsofsymfony/rest-bundle/FOS/RestBundle/EventListener /BodyListener.php line 127 {"exception": "[object] (Symfony \ Component \ HttpKernel \ Exception \ BadRequestHttpException (code: 0): 在/var/www/vhosts/mydomain.com/mautic/vendor收到无效的json消息/friendsofsymfony/rest-bundle/FOS/RestBundle/EventListener/BodyListener.php:127) "} []

来自 Postman 的数据格式是这样的:

 { "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);

    });

  }
4

0 回答 0