Сбор UserAgent в Google Form

Я пытаюсь собрать пользовательский агент для ответов на форму Google. Можно ли это сделать с помощью Google Script Editor? Если да, можете ли вы дать мне несколько советов о том, как?

Спасибо!

Жаклин


person Jacqueline    schedule 25.03.2015    source источник


Ответы (2)


Мне это тоже нужно, и я поигрался с самым копированием формы. и добавив новое скрытое поле, но это выглядело так:

  1. Рискованно. (Google может внести мою форму в черный список.)
  2. Маловероятно, что это сработает, так как на стороне сервера Google не будет обработчика этого поля.

Поэтому я встроил форму Google в свое приложение и добавил кнопку непосредственно над ней, которая копирует строку пользовательского агента в буфер обмена, используя буфер обмена. js. (Я использую jQuery для создания страницы, в которую встроена форма Google, но вы поняли идею.)

let $systemInfoButton = $(`<a id="copy-user-agent" class="plain-button" data-clipboard-text="${navigator.userAgent}">Copy System Info</a>`);
...
new ClipboardJS('#copy-user-agent');

Затем я добавил поле под названием «Информация о системе» в свою форму Google (непосредственно перед кнопкой отправки), попросив пользователя нажать кнопку и вставить результат в поле перед отправкой. Может сделать это обязательным.

Не очень хорошо, но на данный момент сойдет - пока я не придумаю лучшее решение, которое делает это автоматически (что, вероятно, означает, что я делаю все сам или использую другого поставщика форм).

person daffinm    schedule 26.09.2019

Сбор адресов электронной почты или имен респондентов формы: Если вы находитесь в домене Google Apps, вы можете установить флажок в верхней части редактора форм с надписью «автоматически собирать имя пользователя yourdomain.com респондента». Если вы не находитесь в домене Google Apps, вам нужно будет включить вопрос, который запрашивает адрес электронной почты или имя.

Что касается использования сценария, взгляните на этот связанный пост: Получить имя пользователя при отправке формы, когда форма встроена. Поскольку этот метод использует сценарий, он может потребовать, чтобы пользователи вашей формы одобрили доступ сценария к своей личности (по крайней мере, при первом использовании), что может показаться подозрительным для многих пользователей в зависимости от цели формы. Может быть проще просто включить вопрос, если вы не находитесь в домене.

Если вы создаете свои собственные формы с помощью службы форм Google Apps Script , у вас будет немного больше контроля. Взгляните на метод formResponse "getRespondentEmail()".

person Brady    schedule 31.03.2015
comment
Спасибо за ответ! Однако я ищу не имя пользователя респондента, а его пользовательский агент — строку, представляющую браузер и устройство, с которого он отвечал. Например, сейчас мой пользовательский агент — Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5), AppleWebKit/537.36 (KHTML, например Gecko), Chrome/41.0.2272.104 Safari/537.36. Есть идеи, можно ли это втянуть? - person Jacqueline; 01.04.2015