Weshalb ist das wichtig?

Wir müssen einen Weg zur Umgehung der Same-Origin-Policy finden, damit Anwendungen auf einem anderen Computer gehostet werden können und nicht direkt auf dem Server, der JavaScript-API-Komponenten hostet. Dies ist insbesondere bei der Anwendungsentwicklung nützlich, wenn Entwickler ihren Code in der Regel auf einem lokalen Computer ausführen möchten. Der lokale Computer verwendet normalerweise „localhost“ oder einen Computernamen als Hostnamen. Der Server mit den Steuerelementen verwendet einen anderen Hostnamen und hat daher einen ganz anderen Ursprung.

Hierzu wurde ein Proxy bereitgestellt, der Anforderungen an einen Remotehost weiterleitet und dem Browser weiter als in der Domäne enthalten angezeigt wird. Der Java-Proxy kann für einen Java-Servlet-Container bereitgestellt werden, der die Servlet-Spezifikation ab Version 2.4 implementiert.

Der Proxy verwendet einfach eine URL als Parameter und fordert die Seite an. Dabei werden die Inhalte wieder an die anfordernde Person übergeben. Wenn der Proxy auf dem Server eines lokalen Computers an Port 80 installiert ist, können Sie auf die Webseite http://myserver:8765/some/path/example.html zugreifen, indem Sie http://localhost/riaproxy?url=http://myserver:8765/some/path/example.html aufrufen. Das vom Proxy gesendete Ergebnis entspricht dem Ergebnis, das bei direktem Zugriff auf die Ziel-URL erzielt würde. Der wesentliche Unterschied ist, dass die zweite URL einem Browser als Bestandteil der lokalen Domäne „http://localhost/“ und nicht als „http://myserver:8765/“ angezeigt wird. Beachten Sie, dass der URL-Parameter zur Einhaltung der Syntaxregeln für Internet-URLs (Conf. RFC 1738: Uniform Resource Locators) ordnungsgemäß codiert werden muss.