Rails: Wie kann ich mich anmelden, auf der Seite ist mein Javascript eingebettet ist?
-
07-07-2019 - |
Frage
Meine Website bietet ein Javascript, das die Geschwindigkeit des niederländischen Äquivalent des Dow-Jones-Index zeigt. Benutzer können dieses Skript in ihrer Website einbetten.
Es sieht wie folgt aus:
<script type="text/javascript" src="http://www.aexscript.nl/r/gratis"></script>
Der entsprechende Controller-Aktion sieht wie folgt aus:
def show
@script = Script.find_by_code(params[:code])
@rate = Rate.find(:first)
respond_to do |format|
format.js # show.js.erb
end
end
Ich möchte die URL der Website anmelden das Javascript eingebettet wurde. Wie kann ich das tun?
Lösung
Erstellen Sie eine Datenbanktabelle, die Ihre Hits protokolliert. Jedes Mal, wenn jemand Show trifft, melden Sie es.
Sie können meinen Code für etwas ähnliches von http://github.com/saizai/hyperdictionary -. nehmen Sie die four_oh_four Controller, Modell & Migration
Wenn Sie andere Informationen (zB Sie den angemeldeten Benutzer irgendwie wissen? Sie wissen, wessen Link ist es?) Sie es auf diese Tabelle als Fremdschlüssel leicht hinzufügen können. Dann würden Sie tun so etwas wie
user.js_hits.find(:all, :select => "name, count(id) as count", :group => 'name')
Und es in einem einfachen Blick fällt (meinen app / views / four_oh_fours / index.html.erb für ein einfaches Beispiel sehen).
Andere Tipps
Ihr Webserver sollten Sie Zugriffsprotokolle geben; mit dem Sie jede HTTP-Anforderung zeigen, erhalten haben.
Dann können Sie nur für diese Datei für Anfragen grep.
Beispiel für Apache