Rotaie: come posso accedere a quale sito è incorporato il mio javascript?
-
07-07-2019 - |
Domanda
Il mio sito fornisce un javascript che mostra il tasso dell'equivalente olandese dell'indice Dow Jones. Gli utenti possono incorporare questo script nel loro sito Web.
Sembra così:
<script type="text/javascript" src="http://www.aexscript.nl/r/gratis"></script>
L'azione del controller corrispondente è simile alla seguente:
def show
@script = Script.find_by_code(params[:code])
@rate = Rate.find(:first)
respond_to do |format|
format.js # show.js.erb
end
end
Voglio registrare l'URL del sito in cui è stato incorporato javascript. Come posso farlo?
Soluzione
Crea una tabella di database che registra i tuoi risultati. Ogni volta che qualcuno colpisce show, registralo.
Puoi estrarre il mio codice per qualcosa di simile da http://github.com/saizai/hyperdictionary - prendi il controller, il modello e & amp; four_oh_four la migrazione.
Se hai altre informazioni (ad es. conosci in qualche modo l'utente che ha effettuato l'accesso? Sai di chi è il link?) puoi facilmente aggiungerlo a quella tabella come chiave esterna. Quindi faresti qualcosa del tipo
user.js_hits.find(:all, :select => "name, count(id) as count", :group => 'name')
E rilascialo in una vista semplice (vedi la mia app / views / four_oh_fours / index.html.erb per un semplice esempio).
Altri suggerimenti
Il tuo server web dovrebbe darti i log di accesso; che ti mostrerà ogni richiesta HTTP ricevuta.
Quindi puoi semplicemente grep per richieste di questo file.
Esempio di Apache