Я создал веб-приложение для отслеживания использования транспортных средств внутри моей организации. Одна из функций заключается в том, что приложение просматривает существующую базу данных (Google Таблицы), чтобы проверить, совпадает ли начальный пробег с последним конечным пробегом. Я делаю это с помощью Gviz и запросов на JavaScript.
К сожалению, это делается на стороне клиента. Поскольку у опытного пользователя есть возможность просмотреть исходный код и получить доступ к Google Sheet, я хотел бы переместить его на серверную сторону (в Google Script). Таким образом, они будут видеть только результаты запроса, когда они будут переданы клиенту из Google Script. Пример ниже взят не из моего веб-приложения, это то, с чем я играю, чтобы запросить Google Sheet из Google Script ... Я знаю, как передавать значения от GS клиенту, поэтому моя основная проблема - выяснить, как запрашивать лист Google из скрипта Google.
function myFunction() {
//Google Sheet
var sourceSheetString = 'https://docs.google.com/spreadsheets/d/116J**SheetID**w844/gviz/tq?sheet=Sheet1&headers=1&tq=';
var query = 'select A,B where B = "Brown" order by A desc';
var queryString = sourceSheetString + query;
var response = UrlFetchApp.fetch(queryString);
var parsedResponse = JSON.parse(response.getContentText());
Logger.log(parsedResponse);
}
К сожалению, мой домен Google Apps не позволяет делиться файлами за пределами домена, поэтому я не смогу делиться файлами и т. Д.
Я рыскал по Интернету в поисках решения, но самое близкое, что я мог придумать, - это UrlFetchApp. Это ошибка, которую я получаю при запуске функции:
SyntaxError: Неожиданный токен: ‹(строка 10 (var parsedResponse), код файла)
Когда я вставляю полную строку URL-адреса в окно браузера, она работает нормально, поэтому я знаю, что проблема не в самой строке запроса.
@SandyGood, когда я регистрирую ответ, я получаю следующее: <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta content="width=300, initial-scale=1" name="viewport"> <meta name="description" content="Create a new spreadsheet and edit with others at the same time -- from your computer, phone or tablet. Get stuff done with or without an internet connection. Use Sheets to edit Excel files. Free from Google."> <meta name="google-site-verification" content="LrdT**QXZs"> <title>Google Sheets - create and edit spreadsheets online, for free.</title> <style> a bunch of CSS...
Logger.log(response.getContentText());
Вы можете выполнить веб-поиск сайтов, которые проверяют действительный JSON. - person Alan Wells   schedule 17.01.2016var data = response.getDataTable();
, а затем сделал бы с данными все, что вы хотите. Вам нужно будет загрузить API визуализации - person User   schedule 18.01.2016