• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Webservice mit SOAP und evtl. AJAX

mfgleo

New member
Hallo alle zusammen!

Also, ich habe da mal ein Problem! Ich besitze mehrere Domains und möchte auf meiner Hauptdomain einen Webservice anbieten.

Die nächste Zeile soll in einer der anderen Domains im Head-Tag eingebunden werden:
HTML:
<script type="text/javascript" src="http://www.meine-hauptseite.de/webservice.js"></script>

Dieses Script soll eine Informationen an die Hauptdomain senden, sobald ein Event ausgelöst wurde. Der Webservice nimmt die Information an und verarbeitet diese intern weiter, ohne dabei einen Rückantwort zu senden.

Wie ist so was möglich???

Muss ich unbedingt einen Webservice anbieten? Wenn nicht, wie wird das mit Javascript programmiert. (AJAX hab ich schon ausprobiert. Resultat: Zugriff verweigert!)

Hab schon das Tutorial Eigene Web Services mit PHP5 bereitstellen? Kein Problem! ausprobiert. Kann man das evtl. so umschreiben, dass man nur was sendet und keine Antwort erhält. Bitte nicht fragen, wieso ich das machen will! Ich will nur wissen wie es geht!!!

Falls jemand eine, zwei, ... Lösung(en) für mein Problem hat, wäre ich froh wenn es gepostet wird. Bitte nur konstruktive Vorschläge.

Danke im Voraus!
 
ich meine du bekommst zumindest in Firefox Fehlermeldungen wenn du Javascript dateien von fremden Servern einbinden willst, oder einen AJAX Request an einen fremden Server sendest.
Fremd soll in diesem Fall heißen, dass die URL eine andere ist, als die des Servers von der du die Seite lädst.
 
ich meine du bekommst zumindest in Firefox Fehlermeldungen wenn du Javascript dateien von fremden Servern einbinden willst, oder einen AJAX Request an einen fremden Server sendest.
Fremd soll in diesem Fall heißen, dass die URL eine andere ist, als die des Servers von der du die Seite lädst.

Ich bin mir nicht sicher (mit AJAX gehts sicherlich nicht) - aber wird Googles UrchinTracker nicht genau so eingebunden?

ich habe etwas rumgespielt:

Server A

PHP:
function a() {
a = document.getElementsByTagName("a");
for (var i=0;i<a.length;i++)
   a[i].onclick=function () {
    var f = document.createElement("form");
    var t = document.createElement("input");
    t.value="Text";
    t.type="text";
    f.appendChild(t);
    f.method="post";
    f.action = "http://ServerA.com/sammleDaten.php"; // Formular auf Server A
    document.getElementsByTagName("body")[0].appendChild(f);
    f.submit();
    return false;
   }
}

window.onload = a;
Server B:
PHP:
<html>
<head>
   <script type="text/javascript" src="http://serverA/script.js"></script>
 </head>
 
 <body>
 <a href="">Test</a>
 </body>
 </html>

Hat problemlos funktioniert. Ich würde mal dieses Vorgehen versuchen; ServerA muss dann natürlich einen redirect-Header zurückschicken. Allerdings bin ich mir nicht sicher, ob die same-origin policy durch einen Proxy verfälscht wird (hab das an der Uni versucht).

Ansonsten könnte man es auch mit Bildern versuchen:
var img = new Image();
img.src="www.serverA/sammleDaten.php?&a=3&b=5 ....
 
Zuletzt bearbeitet:
gibts da nicht Probleme mit der policy im Browser?

Das frage ich mich auch - insbesondere, ob ein Script, das von einem fremden Server stammt, als "fremd" betrachtet wird, oder ob es als eigener Code angeschaut wird. Wie gesagt hat das Beispiel oben problemlos geklappt, allerdings hängt da ein Proxy Server dazwischen; vlt. ist das der Grund?
Und wie - falls die Same Origin Police dies verbietet - funktionieren dann die Webanalytiktools auf "fremden" Seiten?
Vielleicht kann mir jemand auf die Sprünge helfen?
 
Eine Lösung für Dein Problem findest Du auf meiner Web-Site: The AJAX Engine.

Aus einer WSDL Definitionen eines Webservices wird ein JavaScript Code erzeugt, der dann einen WebService über SOAP aufrufen kann. Das alles ist JavaScript only - funktioniert also prinzipiell für alle Server Plattformen, die Standard Webservices zur Verfügung stellen.

Ich bin in Java und ASP.NET zuhause. Bei PHP5 kann ich gerne weiterhelfen.
 
Zurück
Oben