Я работаю у поставщика аналитики, и мы ищем поддержку AMP. Я изучаю данные с помощью amp-analytics. У меня по умолчанию trackPageView
работает из примера в документации. Я получаю запрос POST, отправленный на мой сервер при загрузке страницы.
Однако один из наших вариантов использования - отправка маяка после того, как запрос AJAX был выполнен на странице. Идея состоит в том, что наш клиент выполняет запрос AJAX к одному из наших API и возвращает некоторые данные. Некоторые из этих данных используются для добавления элементов в DOM, а некоторые из этих данных отправляются нам обратно, что является типом маяка в нашей системе. Одна вещь, о которой я подумал, так это то, что второй фрагмент данных приходит от нас, а затем отправляется обратно нам, мы можем просто отправить его между нашими службами внутренне, и у браузера вообще не будет необходимости отправлять его нам, но есть Несколько проблем, которые мешают нам сделать это:
- Рассматриваемый API имеет высокий трафик и имеет реализованное кэширование. Браузеры отправляют гораздо больше запросов, чем получает сервер нашего API, и мы хотим отслеживать их все.
- Мы также хотим отслеживать данные, такие как пользовательский агент браузера, поэтому нам нужно, чтобы этот запрос отправлялся браузером, а не нашим сервером API.
У меня есть несколько проблем с реализацией этого в AMP:
- Запрос AJAX будет выполняться элементом
amp-script
, который наш клиент соберет. Поскольку amp-script
s очень песочница, может ли это вызвать проблемы с взаимодействием содержимого amp-script
со временем выполнения AMP?
- Я не вижу триггеров в документах AMP, которые я мог бы использовать для отправки запроса
amp-analytics
, когда запрос AJAX завершится.
Обычно вопросы, которые я собираю в StackOverflow, являются более прямыми, но сейчас я в основном не понимаю, как реализовать это с помощью AMP или вообще возможно ли вообще реализовать это с помощью AMP.