Некоторое время назад я написал сценарий, который отправлял бы данные из моей электронной таблицы на веб-сайт, который я написал в PHP, который вставлял бы данные в PDF-файл и затем отправлял по электронной почте в PDF нужным получателям. Он перестал работать в течение последних 6 месяцев или около того, и когда я посмотрел на него, оказалось, что проблема в этом разделе кода, который отправляет данные:
var ss = SpreadsheetApp.getActiveSpreadsheet();
var range = ss.getRangeByName("FormFill_PDFData").getValues();
var formData = {'x': range};
var strFormData = JSON.stringify(formData);
var options = {
'method' : 'post',
'payload' : "x=" + strFormData
};
var url = "http://www.myWebSite.com/myPHP.php";
var returnValue = UrlFetchApp.fetch(url, options);
Когда я Logger.log range, formData или strFormData все они дают ожидаемое значение. Когда я записываю logger.log returnValue, отправленные данные отображаются усеченными.
На стороне PHP, для отладки, я просто получаю данные и var_dump, чтобы возвращаемое значение было данными, только что полученными из гугл листы. Этот код PHP выглядит следующим образом:
<?php
$x="";
$obj=$_POST["x"];
var_dump($obj);
?>
Чтобы убедиться, что проблема не в том, что веб-сайт PHP неправильно отправил данные обратно на листы Google, я попытался сохранить полученные данные. в локальный файл. Этот код PHP выглядит следующим образом:
<?php
$x="";
$obj=$_POST["x"];
$fp = fopen('data.txt', 'w');
fwrite($fp, $obj);
fclose($fp);
var_dump($obj);
?>
Файл data.txt на сервере веб-сайта также показывает, что полученные данные усекаются.
Таким образом, проблема с усечением, по-видимому, возникает либо в том, как лист Google отправляет данные, либо в том, как мой сервер веб-хостинга получает данные. Хост - GoDaddy, поэтому я ожидаю, что они разработают свои сайты, чтобы иметь возможность получать большие файлы JSON. Неужели Google недавно установил ограничения на размер данных, которые могут быть отправлены?
Любая помощь будет принята с благодарностью, поскольку работа в этом подразделении была почти остановлена из-за постоянных ошибок, создаваемых теперь, когда формы снова заполняется вручную.