Diese Frage ist eine genauere Beschreibung des Problems, das ich auf dieser thread fragte. Grundsätzlich habe ich eine Webanwendung, für die ich versuche, die OAuth-Funktionalität von Twitter zu verwenden. Diese Anwendung verfügt über einen Link, der einen Benutzer zur Eingabe seiner Twitter-Anmeldeinformationen auffordert. Wenn ein Benutzer auf diesen Link klickt, wird ein neues Fenster über JavaScript geöffnet. Dieses Fenster dient als Dialog. Wenn ein Benutzer auf den Link klickt, wird er im Dialogfeld auf die Website von Twitter weitergeleitet. Auf der Twitter-Seite hat der Benutzer die Möglichkeit, seine Twitter-Zugangsdaten einzugeben. Wenn sie ihre Anmeldeinformationen angegeben haben, werden sie im Dialogfeld auf eine Seite auf meiner Website weitergeleitet. Dies wird durch eine Callback-URL erreicht, die für Anwendungen auf der Twitter-Site eingerichtet werden kann.JavaScript - window.location - Erlaubnis verweigert - Cross Site Scripting
Alles, was ich versuche, ist die URL des Fensters zu lesen, das ich geöffnet habe. Ich versuche, die URL zu lesen, um eine Änderung zu erkennen, damit ich entsprechend reagieren und auf der Startseite in das HTML-DOM schreiben kann. Wenn ich jedoch versuche, die URL des Dialogfelds zu lesen, erhalte ich den Fehler "Berechtigung verweigert". Um das Problem zu isolieren und neu zu erstellen, habe ich den folgenden Test erstellt, der das Problem zeigt.
<html>
<body>
<input type="button" value="test" onclick="startTest();" />
<script type="text/javascript">
var dwin = null;
var timeoutID = 0;
function startTest()
{
dwin = window.open("http://www.google.com", "dialog", "height=600,width=800", true);
timeoutID = setTimeout("timerElapsed()", 1000);
}
function timerElapsed()
{
if (timeoutID == 5)
{
clearTimeout(timeoutID);
alert("We're done!");
}
else
{
if (dwin != null)
{
alert(dwin.location);
}
timeoutID = setTimeout("timerElapsed()", 1000);
}
}
</script>
</body>
</html>
Wie bekomme ich dwin.location? Ich bin wirklich verwirrt. Ich dachte nicht, dass das so schwierig sein würde.
Vielen Dank für Ihre Hilfe.
Aber was ist, wenn das Fenster Popup nicht meine Seite ist? Während die Endseite meine Site ist, wird sie von einer Seite, die nicht meine Site ist, auf diese Seite umgeleitet. Gibt es keine Möglichkeit, dies zu tun? – Villager