Formspree 400 НЕПРАВИЛЬНЫЙ ЗАПРОС

Ошибка на консоли — POST http://formspree.io/[email protected] 400 ( ПЛОХОЙ ЗАПРОС) отправить @ jquery.min.js:4

Я не могу отправлять формы с помощью Formspree. Ошибка показывает:

Не удалось загрузить ресурс: сервер ответил со статусом 400 (ПЛОХОЙ ЗАПРОС)

Я попытался изменить URL-адрес на https://formspree.io/[email protected]. Я сталкивался с этой проблемой в течение последних 10 дней, и до этого проблем не было. Это было протестировано на Google Chrome версии 64. Может ли кто-нибудь помочь мне в этом.


person ashwin    schedule 02.03.2018    source источник
comment
Пожалуйста, покажите нам свой код, так как ваш вопрос в его текущей форме слишком широк.   -  person Lajos Arpad    schedule 02.03.2018
comment
Исправлены кавычки ошибок   -  person Hunter Turner    schedule 03.03.2018


Ответы (1)


К сожалению, отправка AJAX теперь зарезервирована для пользователей уровня Gold на Formspree.

Чтобы обойти это, вы можете создать элемент <form> и программно отправить его, например:

function submitForm(name, email, message){
    var destinationEmail = "[email protected]";
    var form = document.createElement('form');
    form.setAttribute("action", "https://formspree.io/" + destinationEmail)
    form.setAttribute("method", "POST")

    // Subject for your email
    var field = document.createElement("input");
    field.setAttribute("type", "hidden");
    field.setAttribute("name", "_subject");
    field.setAttribute("value", "Contact form submitted");
    form.appendChild(field);

    // Contact email address        
    field = document.createElement("input");
    field.setAttribute("type", "hidden");
    field.setAttribute("name", "email");
    field.setAttribute("value", email);
    form.appendChild(field);

    // Your user's name
    field = document.createElement("input");              
    field.setAttribute("type", "hidden");
    field.setAttribute("name", "name");
    field.setAttribute("value", name);
    form.appendChild(field);

    // The text message
    field = document.createElement("input");              
    field.setAttribute("type", "hidden");
    field.setAttribute("name", "message");
    field.setAttribute("value", message);
    form.appendChild(field);

    document.body.appendChild(form);    
    form.submit();
}

submitForm("Your user's name", "[email protected]", "Here is my message");

Минус в том, что ваш адрес электронной почты будет отображаться в адресной строке, а браузер покажет капчу, прежде чем продолжить.

Однако я обнаружил, что после нескольких отправок Rest API действительно начинает работать нормально.

Надеюсь, поможет

person brickpop    schedule 05.04.2018