Rails: Как мне войти на какой сайт встроен мой javascript?
-
07-07-2019 - |
Вопрос
Мой сайт предоставляет JavaScript, который показывает скорость голландского эквивалента индекса Доу-Джонса. Пользователи могут встраивать этот скрипт в свой сайт.
Это выглядит так:
<script type="text/javascript" src="http://www.aexscript.nl/r/gratis"></script>
Соответствующее действие контроллера выглядит следующим образом:
def show
@script = Script.find_by_code(params[:code])
@rate = Rate.find(:first)
respond_to do |format|
format.js # show.js.erb
end
end
Я хочу зарегистрировать URL сайта, на котором был встроен JavaScript. Как я могу это сделать?
Решение
Создайте таблицу базы данных, которая регистрирует ваши хиты. Всякий раз, когда кто-то нажимает на шоу, регистрируйте его.
Вы можете скопировать мой код для чего-то похожего из http://github.com/saizai/hyperdictionary - взять контроллер, модель и усилитель four_oh_four; миграция.
Если у вас есть другая информация (например, вы знаете, как вошел пользователь? Вы знаете, чья это ссылка?), вы можете легко добавить ее в эту таблицу как внешний ключ. Тогда вы бы сделали что-то вроде
user.js_hits.find(:all, :select => "name, count(id) as count", :group => 'name')
И оставьте его в простом виде (простой пример см. в моем приложении / views / four_oh_fours / index.html.erb).
Другие советы
Ваш веб-сервер должен предоставлять вам журналы доступа; который будет показывать вам каждый полученный HTTP-запрос.
Тогда вы можете просто grep для запросов на этот файл.
Пример для Apache