Hab' ich was verpasst? Dachte, das geht nicht Domainübergreifend? Entweder unterstützt Chrome das dann trotzdem (zumindest für Erweiterungen?) oder das Skript ist für die Katz'. Oder etwa nicht?
Was ist Ajax?
Wenn Du diese Frage beantworten kann, dann haste deine Antwort.
Asynchrone Datenübertragung zwischen Client und Server ... und das beantwortet mir meine Frage nun wie?
Soweit ich informiert bin, kann man bisher über Ajax nur mit dem Server kommunizieren, von dem man vorher die Seite bekommen hat. Das ist auch vollkommen korrekt so, da alles andere tatsächlich ein Sicherheitsrisiko darstellen würde (überlege, die Seite oder die Browser-Erweiterung, wenn Du möchtest, läuft bei Dir lokal - meinetwegen kannst Du da Deine Termine verwalten, oder was auch immer - und telefoniert dann trotzdem nachhause).
Ob das nun geht oder nicht, hängt aber sicher nicht davon ab, was Ajax überhaupt ist, sondern ob es der Browserhersteller erlaubt oder nicht. Wenn es nun in Chrome so implementiert ist, dass man z.B. über Erweiterungen via Ajax auch mit fremden Servern kommunizieren kann, dann geht das dort auch. Wenn nicht, dann nicht. Toll wäre das sicher nicht ...
Und genau da setzt meine Frage an.
"Soweit ich informiert bin, kann man bisher über Ajax nur mit dem Server kommunizieren, von dem man vorher die Seite bekommen hat."
Genau das ist nicht der Fall. Der Request kann überall hingehen und somit auch die verpackten Daten. Beim IE ist es zumindest so, dass ein entsprechender Dialog angezeigt wird und dich darüber informiert. Kann man aber auch ausschalten ( nicht über Script ) :-)
Was Du meinst, ist die Same Origin Policy bspw. von Firefox; ich vermute, dass Chrome das auch macht. Es stimmt, dass ein XmlHttpRequest (das, was die meisten unter AJAX verstehen), nicht an eine fremde Domain abgesetzt werden darf. Allerdings kann man sehr wohl JavaScript von Drittseiten abrufen. Sonst würden bspw. Google Analytics nicht funktionieren.
Auf diese Weise kann man aber auch gewissermaßen AJAX simulieren, d.h. Inhalte nachladen. Das geschieht ganz einfach, indem man immer wieder eine bestimmte JS-Datei aufruft (d.h. den entsprechenden DOM-Knoten aktualisiert). Diese Datei wird vom Server mit den korrekten Daten ausgeliefert, bspw. einer globalen Variable, die das Antwortobjekt enthält.
Vgl.: http://www.codelog.net/codebits/lightweight-json-fetcher-3rd-party-capable
Ergo: Same Origin Policy gibt es, aber man kann sie auch umgehen. Sonst könnte man bspw. nicht eine Google-Maps-Karte bei sich einbauen und diese interaktiv nutzen.
lxg schrieb:
--------------------------------------------------------------------------------
> Allerdings kann man sehr wohl JavaScript von Drittseiten abrufen.
Aber selbst bei Bookmarklets geht das nicht bzw. ist das Abrufen von Drittseiten gesperrt :/
Danke für die Antwort.
"Same Origin Policy" <- Jep, das war gemeint.
Stimmt, GA wird nur über ein JavaScript Schnipsel eingebunden, darüber habe ich noch überhaupt nie nachgedacht!
Danke auch für den Link, sehe ich mir morgen mal genauer an, heute habe ich keinen Nerv mehr dafür bei der Hitze.
Allerdings nutzt der doch in seinem Code einen ganz "normalen" jQuery ajax-Aufruf und dann sollte das doch eigentlich nicht funktionieren ... oder kann jQuery das?
Der Teil ist gemeint:
1. var sendEmail = function(username, password, url, callback) {
2. var msg = getMessage(username, password, url);
3. $.ajax({
4. type: 'POST',
5. url: 'the url of the mailer script',
6. data: 'the headers you want to send',
7. success: callback
8. });
9. };
MfG.
Uff, kann ich gerade nicht genau sagen. Ich vermute schon, dass sich hinter $.ajax ein XmlHttpRequest verbirgt. Aber ich weiß auch, dass jQuery ebenfalls auf die o.g. Weise die SOP aushebeln kann; das nennt sich bei denen (glaube ich) pJSON. Such mal nach jQuery in Verbindung mit SOP oder Cross Domain oder so.
Kommentare: 171 | letzter Beitrag 20:42 Uhr
Kommentare: 94 | letzter Beitrag 26.05. 19:45
Kommentare: 75 | letzter Beitrag 19:49 Uhr
Kommentare: 70 | letzter Beitrag 18:56 Uhr
Kommentare: 60 | letzter Beitrag 20:11 Uhr
E-Mail an news@golem.de

Der japanische Spieldesigner Goichi Suda - Fans sagen schlicht "Suda 51" - ist für schräge Actionspiele bekannt. Sein nächstes Werk schickt ein scheinbar braves Schulmädchen in den Kampf gegen Zombies.

Weitgehend unbemerkt hat der US-Händler Tigerdirect die ersten Chromebox-Systeme von Google ausgeliefert. Für 330 US-Dollar bekommt der Nutzer recht gute Hardware in Nettop-Form, die sehr viel leistungsfähiger ist als die des Chromebook mit ChromeOS.

Der neue Chef der Piratenpartei steht im Verteidigungsministerium unter Druck. Elektronische Kommunikation für seine Partei ist ihm in der Dienstzeit untersagt. "Es gibt Leute im Ministerium, die darauf warten, dass ich Fehler mache", sagte Schlömer.

Renesas ist nach Elpida der zweite schwer angeschlagene japanische Chiphersteller. Renesas, das Hitachi, Mitsubishi Electric und NEC gehört, macht Verlust und will seine größte Fabrik verkaufen.

RIM soll in den kommenden Tagen erneut einen massiven Stellenabbau ankündigen. "Ich habe herausgefunden, welche Teile ich in meinem Puzzle nicht mehr benötige", sagte Firmenchef Thorsten Heins.

Ein britisches Blog will erfahren haben, dass Facebook den norwegischen Browserhersteller Opera Software kaufen will. Beide Unternehmen wollen sich dazu nicht äußern.