Wie bekomme ich die Url der Seite, auf der mein Flashfilm embeded ist? [Flash CS3]
| Beiträge: 3 Registriert: Aug 2010
| 10.08.2010, 16:41
Hallo zusammen,
habe ein Widget gebaut, das Besucher meiner Seite auf anderen Seiten einbinden können. Jetzt möchte ich natürlich wissen auf welcher anderen Seite der Flashfilm eingebunden wurde.
Die swf Datei ruft beim Abspielen ein PHP Skript auf, um bestimmte Inhalte zu laden und ich habe schon versucht mit $_SERVER den Referer zu bekommen. Aber das hat leider nichts gebracht. Da bekomme ich ja nur die IP Adresse des Users, der sich den Flashfilm gerade anguckt.
Gibt es eine Möglichkeit, dass mir der Flashfilm sagen kann, wo er gerade geladen wurde (aktuelle, fremde URL o.ä.). Beispielsweise wenn der Film hier im Forum eingebunden wurde will ich mitbekommen, dass der Film auf "flashhilfe.de/XXX" eingebunden wurde.
Vielen Dank und viele Grüße.
Peter | | | Beiträge: 6981 Wohnort: München Registriert: Jan 2002
| 10.08.2010, 21:27
Mit _url sollte das gehen.JavaScript & JavaFX Freelancer || Flashhilfe @ Twitter || XING Profil | | | Beiträge: 1004 Registriert: Jul 2008
| 10.08.2010, 22:55
Hi,
mit AS3:
Grüße,
KerstinWer Rechtschreibfehler findet, darf sie gerne behalten. | | | Beiträge: 3 Registriert: Aug 2010
Themenautor/in
| 11.08.2010, 16:47
Hallo Sebastian und Kerstin,
ich habe beide Ansätze probiert aber ich bekomme damit nur die URL von wo aus der Flashfilm geladen wurde, also meine Eigene. Ich möchte ja die URL, wo der Flashfilm eingebunden wurde, haben.
@Sebastian: In deinem Link steht sogar "Retrieves the URL of the SWF, JPEG, GIF, or PNG file from which the movie clip was downloaded".
In Javascript mach ich einfach
und fertig.
Kann ich das irgendwie mit Flash an meinen Server senden? Oder versteh ich da was grundsätzlich falsch?
Danke!
Peter | | | Beiträge: 3 Registriert: Aug 2010
Themenautor/in
| 12.08.2010, 17:21
Ich habe meine Frage auch in einem englischsprachigen Forum gepostet und bin mit einem kleinen Tipp sodann auf die Lösug gekommen.
Hier mal mein Code:
ActionScript:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | var location:String = "unable to retrieve window.location" ;
try {
// try to call javascript to get window.location
location = ExternalInterface.call ("window.location.href.toString") ;
} catch (error:SecurityError) {
/*
if Flash vars set like (allowScriptAccess = 'never') or (allowNetworking = 'internal')
catch the SecurityError and extract the window.location url out of the error.message
*/
var search:RegExp = /.+cannot\saccess\s(.+)\./i ;
var matches:Array = String(error.message).match (search) ;
if (matches && matches.length > 1) {
location = matches[1] ;
}
}
|
Ich schaue, ob ich mit Javascript die aktuelle URL bekomme. Ist das, wie bei Facebook, verboten fange ich die Fehlermeldung ab und parse die error message nach der aktuellen URL. Denn in der Fehlermeldung heißt es sowas wie "Security Sandbox Violation" und "cannot access http://www.facebook...". Das funktioniert super und nun kann ich tracken wo mein Widget embedded wurde.
Vielleicht kann ja einer die Antwort gebrauchen.
Grüße...
Peter | |
| Ähnliche Beiträge zum Thema | 23.10.2020 - Skynetzx 01.10.2019 - pmvTaucha.4 |
|
Flashhilfe.de Flash Platform Tipps & Tutorials Flash Platform Andere Programmiersprachen Jobangebote Diskussionen
Flashhilfe News 
Regeln & Bedingungen
|