Rails: ¿Cómo puedo iniciar sesión en qué sitio está incrustado mi javascript?
-
07-07-2019 - |
Pregunta
Mi sitio proporciona un javascript que muestra la tasa del equivalente holandés del índice Dow Jones. Los usuarios pueden incrustar este script en su sitio web.
Se ve así:
<script type="text/javascript" src="http://www.aexscript.nl/r/gratis"></script>
La acción del controlador correspondiente se ve así:
def show
@script = Script.find_by_code(params[:code])
@rate = Rate.find(:first)
respond_to do |format|
format.js # show.js.erb
end
end
Quiero registrar la URL del sitio en el que se ha incorporado JavaScript. ¿Cómo puedo hacer esto?
Solución
Crea una tabla de base de datos que registre tus aciertos. Cada vez que alguien llegue a mostrar, regístrate.
Puede extraer mi código para algo similar en http://github.com/saizai/hyperdictionary - tome el controlador four_oh_four, modelo y amp; migración.
Si tiene otra información (por ejemplo, si conoce al usuario que inició sesión de alguna manera? sabe de quién es el enlace?), puede agregarlo fácilmente a esa tabla como una clave externa. Entonces harías algo como
user.js_hits.find(:all, :select => "name, count(id) as count", :group => 'name')
Y suéltelo en una vista simple (consulte mi aplicación / views / four_oh_fours / index.html.erb para ver un ejemplo simple).
Otros consejos
Su servidor web debería darle registros de acceso; que le mostrará todas las solicitudes HTTP que recibió.
Entonces puede simplemente buscar solicitudes para este archivo.
Ejemplo para Apache