AMP Form action-xhr после отправки JSON выдает ошибку, и JSON не задействован - PullRequest
0 голосов
/ 31 мая 2019

Это HTML-сайт AMP. У меня есть формы поиска на другом домене, но это дает неожиданную ошибку JSON.parse:

Не удалось проанализировать ответ JSON: SyntaxError: JSON.parse: неожиданный символ в строке 1 столбца 1 данных JSON

Какие данные JSON? Я не понимаю Может ли это быть установлено где-то вне кода, который я пишу, например, в php.ini, .htaccess или в каком-нибудь файле сервера?

Я сбит с толку, потому что у меня он отлично работает на другом домене.

<!DOCTYPE html><html amp>
...

<script async src="https://cdn.ampproject.org/v0.js"></script>
<script async custom-element="amp-form" src="https://cdn.ampproject.org/v0/amp-form-0.1.js"></script>
...
<body>
<form class="sample-form"
  method="post"
  action-xhr="https://www.example.com/amp_TEST.php"
  target="_top">
  <input type="text" id="theid" name="name" placeholder="Name..." value="my name here" required>
  <input type="submit" value="Submit">

</form>

И, принимающий файл, amp_TEST.php

<code>if(!empty($_POST)){
    header("Access-Control-Allow-Credentials: true");
    header("Access-Control-Allow-Methods: Content-Type");
    header("Access-Control-Allow-Origin: https://www-example-com.cdn.ampproject.org");
    header("Access-Control-Allow-Source-Origin: https://www.example.com");
    header("AMP-Access-Control-Allow-Source-Origin: https://www.example.com");
    header("AMP-Access-Control-Allow-Methods: *");
    header("Access-Control-Expose-Headers: AMP-Access-Control-Allow-Source-Origin");
    header('Access-Control-Allow-Headers', 'Content-Type');
}

echo '<pre>POST: ' . print_r($_POST, true) . '
';
...