| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |

26-08-2009, 09:38
|
|
chuckice
Registrierter Benutzer
|
|
Registriert seit: Nov 2005
Beiträge: 13
|
|
Aufruf einer entfernten PHP Seite - Datenübergabe
Hallo,
ich versuche gerade folgendes Problem zu lösen.
Per readfile() organisiere ich mir Daten eines fremden Servers. Ich rufe also eine entfernte PHP-Datei aus und lasse mir die Ausgabe anzeigen.
Jetzt ist es so, dass ich diese einfache Art ein wenig modifizeren will.
Es sollen Daten ( serialisiertes Array, einfache String-Parameter) mitgeschickt werden, die z.b. beliebig groß sein können.
Sollte ich das ganze jetzt per POST-Request durchführen oder gibt es eine bessere Möglichkeit relativ viele Daten an einen fremden Server zu übertragen?
Könnte ein POST-Request nicht auch ein bisschen langsam sein?
Grüße,
|

26-08-2009, 09:46
|
 |
onemorenerd
 Moderator
|
|
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.481
|
|
Das einzige was an einem POST-Request langsam sein könnte, ist die Verarbeitung durch den Webserver. Aber was wäre denn die Alternative, FTP? Oder pull statt push: Du könntest dem entfernten Script die URLs mitteilen und es holt sich die Dateien selbst per GET.
|

26-08-2009, 12:53
|
|
chuckice
Registrierter Benutzer
|
|
Registriert seit: Nov 2005
Beiträge: 13
|
|
Hi,
per FTP kommt erstmal nicht in Frage.
Die Post-Variante scheint vielleicht zu klappen.
Irgendwo auf meiner Website sende ich einen Request zu einer entfernten Datei, die mir anhand übersendeter Parameter einige Daten aufbereitet.
Diese will ich dann zurückbekommen und anzeigen lassen.
Ich pulle ja eigentlich schon , oder nicht?
Grüße
|

26-08-2009, 12:57
|
 |
onemorenerd
 Moderator
|
|
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.481
|
|
Ne, du pushst die Dateien und bekommst die aufbereiteten Daten als Antwort auf diese Aktion. Pull wäre, wenn du das entfernte Script mit einem GET-Request startest und dieses Script holt sich die Dateien dann selbst, z.B. mit GET-Requests. Push wäre also 1x POST, Pull wäre x-Mal GET (einmal von lokal nach remote und für jede Datei ein weiteres GET von remote nach lokal).
Die Frage nach der Größe der Dateien hast du leider nicht beantwortet. POST-Requests dürfen nicht beliebig groß werden. Es gibt Grenzen!
Geändert von onemorenerd (26-08-2009 um 13:01 Uhr)
|

26-08-2009, 12:59
|
|
chuckice
Registrierter Benutzer
|
|
Registriert seit: Nov 2005
Beiträge: 13
|
|
Ah,
das verstehe ich.
Hört sich nach einer sauberen Lösung an.
Danke für deine Hilfe.
|

26-08-2009, 18:36
|
|
chuckice
Registrierter Benutzer
|
|
Registriert seit: Nov 2005
Beiträge: 13
|
|
Hi,
ich muss mich nochmals melden.
Und zwar kriege ich das für mich nicht ganz umgesetzt.
Mein Beispiel:
Meine Site A öffnet auf Site B fileread() eine Datei und lässt sich die Rückgabe ausgeben.
Die Rückgabe wird allerdings auf Site B mit Daten ausgestaltet, die auch von Site A stammen können.
Wie übersende ich die Daten.
Rufe ich von Site B wieder per fileread eine Datei auf Site A auf, die mir ein serialisiertes Array mit Daten zurückliefert oder was sind so die gängisten Strategien?
Sry für das umständliche geschreibe.
|

26-08-2009, 18:45
|
|
h3ll
Registrierter Benutzer
|
|
Registriert seit: Mar 2008
Beiträge: 2.328
|
|
Also üblicherweise verwendet man für sowas ein Webservice. Hardcore PHP-Seiten aufzurufen ist ziemlich billig und fehleranfällig.
Webservice – Wikipedia
SOAP – Wikipedia
PHP: SOAP - Manual
Geändert von h3ll (26-08-2009 um 18:47 Uhr)
|

26-08-2009, 18:45
|
AmicaNoctis
 Moderatorin
|
|
Registriert seit: Jul 2009
Beiträge: 5.550
|
|
Hallo,
du schickst die Daten (die von Site A stammen können) doch per POST an Site B und greifst dann das Ergebnis ab. Reden wir überhaupt von PHP oder was ist fileread()?
Hast du das von onemorenerd überhaupt gelesen? Er hatte dich bereits auf POST hingewiesen.
Gruß,
Anja
|

26-08-2009, 18:49
|
|
chuckice
Registrierter Benutzer
|
|
Registriert seit: Nov 2005
Beiträge: 13
|
|
Ich glaube du hast nicht gelesen, was er geschrieben hat.
Das mit dem Webservice/NUSoap kenne ich, ist allerdings für den jetzigen Stand meines Projektes zu aufwändig.
Momentan werde nur ein paar Zahlen hin und hergeschickt.
|

26-08-2009, 18:54
|
AmicaNoctis
 Moderatorin
|
|
Registriert seit: Jul 2009
Beiträge: 5.550
|
|
Gehört denn der "fremde Server" überhaupt dir? Das wäre erstmal die Grundbedingung, damit das per GET (oder pull) überhaupt möglich ist. Da du "fremder Server" schreibst, bin ich davon ausgegangen, dass es dann mit dem Pull sowieso nicht klappt.
|

26-08-2009, 19:03
|
|
chuckice
Registrierter Benutzer
|
|
Registriert seit: Nov 2005
Beiträge: 13
|
|
Ja, ist alles in eigener Hand.
Zentralisierung der Daten ist leider nicht möglich, sodass ich momentan mit Behelfs-Schnittstellen arbeiten muss, die aber später ausgewechselt werden müssen.
Grüße
|

26-08-2009, 19:14
|
AmicaNoctis
 Moderatorin
|
|
Registriert seit: Jul 2009
Beiträge: 5.550
|
|
Ok, sorry, dann war das pullen von onemorenerd doch als echte Alternative gemeint. Ich hatte erst angenommen, dass er das nur sagte, um zu verdeutlichen, dass du dafür Kontrolle über das Skript auf dem "fremden Server" haben musst.
|

26-08-2009, 19:22
|
|
chuckice
Registrierter Benutzer
|
|
Registriert seit: Nov 2005
Beiträge: 13
|
|
Ich überlege mir gerade, ob ich per Post nicht einfach den Zugriff gestalte und mir dieser ein serialisiertes Array zurückliefert, das ich dann weiterverarbeite.
Erspart mir das Hin & Her & Her.
Danke dennoch für eure Gedanken. Langfristig wird sicherlich eine SOAP - Lösung kommen.
|

26-08-2009, 19:31
|
AmicaNoctis
 Moderatorin
|
|
Registriert seit: Jul 2009
Beiträge: 5.550
|
|
Zitat:
Zitat von chuckice
Langfristig wird sicherlich eine SOAP - Lösung kommen.
|
Eventuell ist statt SOAP ja auch ReST für dich interessant?
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|