Externe Daten einbinden / dabei aufrufenden Server prüfen

moondancer

Mitglied
Hallo,

ich möchte eine Art Content-Server erstellen. Dabei soll es sich um News oder andere Daten handeln welche dann auf anderen Webseiten eingebunden werden können. Die Seiten welche den Content nutzen müssen sich registrieren. Bei Aufruf soll geprüft werden ob der User wirklich registriert ist. Im Moment gestalte ich den Aufruf über einen include() Befehl und prüfe die IP-Adresse der aufrufenden Stelle.
Dies funktioniert soweit (wenn auch nicht so sicher wie ich es gern hätte - auf Domain bezogen). Allerdings habe ich ein Problem wenn der aufrufende User kein PHP nutzen darf und den Content z.B. über einen direkten Link einbinden möchte. In dem Fall wird die IP des aufrufenden Webbrowsers /Internetanschlusses übermittelt und nicht die der Domain was zu einem Zugriffsfehler führt.
Gibt es hier andere und bessere Ansätze - evtl. per XML, oder würde es immer die selben Probleme mit sich bringen? Grundproblem ist sicher die Art der Authentifizierung..

Viele Grüße
Christian
 
Das ist der ideale Einsatzzweck für Webservices ... du bietest einfach eine API an auf die von außen zugegriffen kann via Request, die Methoden die es dafür gibt reichen von XML-RPC über SOAP bis hin zu REST (reines HTTP). Dann kannst du dir auch einen Key zuschicken lassen per Request und dann prüfen ob der vorhanden ist und somit auch das mit der Authentifizierung umsetzen.

Beispiele für sowas sind der Amazon Webservice, der von Ebay oder auch die von Google und einige andere.
 
ja in diese Richtung dachte ich auch. Werd mich mal einlesen.
Wichtig ist für mich dass der Client keinen PHP - Code in seine Seite einbinden muß, da dies z.T. nicht möglich ist. Ist dies bei Webservices gegeben? SOAP wäre mir am sympathischsten und hier schaute es nicht so aus...

Viele Grüße
Christian
 
Der Webservice als solches, der bei dir auf dem Server liegt, wird wohl in PHP geschrieben sein, wie der Client aussieht ist aber völlig egal, er muss lediglich fähig sein einen SOAP-Request abzusetzen, und das kannst du mit vielen Sprachen realisieren.

P.S.: Natürlich kann auch der Webservice als solches in einer anderen Sprache geschrieben sein, aber bei dir lag PHP nahe.
 
ja mir geht es bei der Frage um den Client. Hier habe ich Clients, welche gar keine Scriptsprachen oder CGI ausführen dürfen. Ist in diesem Fall der Zugriff auf Webservices auch möglich - also über reinen HTML oder XML Code?

Viele Grüße
Christian
 
Naja, dann ermögliche ein Zugriff über ein normales HTTP Get wo dann besondere Parameter erwartet werden, als Beispiel: "www.deinedomain.de/inhalt.php?key=123456&id=12" ... dann kann es der User per iframe oder ähnlich einbinden. Sicher ist das natürlich nicht, da jeder den Key im Quelltext sehen kann. Eine andere Variante ist via JavaScript und dem XMLHTTPRequest, was neuerdings ja die Runde als "AJAX" macht, aber dann haste Probleme wenn du Anfragen über die Domaingrenzen hinaus stellst, das verbieten die meisten Browser.

Kurzum: Ganz ohne Programmiersprache wirds schwer das sauber zu implementieren.
 
Zurück