Erstellen einer API für mein PHP-Skript - Datei hochladen

Okay hier ist es: (ich ändere diesen post den Inhalt zum Dritten mal besser zu erklären)

Meine website ist ein Image Hosting website, D. H. der Benutzer kann das hochladen auf meine website und erhalten Sie einen direkten link zu seinem/Ihrem hochgeladenen Bild.

Brauche ich irgendeine Art von API/Art der Kommunikation von meiner Seite aus mit meinem Benutzer. Ich möchte die Benutzer, die registriert sind, auf meiner website in der Lage sein, um BILDER HOCHLADEN von Ihrer website zu meiner Image Host ohne Sie verlassen müssen, um Ihre eigene website (AJAX, iFrame, cURL, JSON, was es braucht).

Die Anfrage auf meiner website sollte eine &request=api Parameter, damit der Benutzer bekommt plain text zurückgegeben, die von meinem upload.php script. Auf diese Weise denke ich, dass ich sicher einen einfacheren Weg von grabbing Daten - /Ausgabe-von meiner Seite aus.

Also, im Grunde, NACH eine POST/DATEIEN die Anforderung vom Benutzer, die Website zu meinem Image Host, erhalten Sie link(s) von meinem upload-Skript verarbeitet, die Sie benötigen, abrufen und verwenden Sie dann für Ihre eigenen Bedürfnisse.

Meine Frage ist: Meine registriert Benutzer sendet eine Datei auf meinen server OHNE die Seite neu zu laden und wieder bekommt die URL(s) auf das Bild. Wie mache ich das?

Was ich versucht habe:

Alle meine versuche waren Blockaden nicht weiter.

Ersten, fügte ich zwei neue Spalten auf zwei verschiedene Tabellen. Meine Benutzer-Tabelle erhielt eine api_key Spalte, die bestimmt war, zu speichern, einen API-Schlüssel, wenn der Benutzer tatsächlich Anzeichen dafür. Die andere Spalte is_api wurde Hinzugefügt, um die Tabelle, wo ich speichern Bild Informationen, nur registrierte user haben Ihre Bilder in der Datenbank gespeichert. Mit dieser neuen Spalte (die Art TINYINT) ich wollte überprüfen, dass das Bild aus der user war (oder nicht war) Hinzugefügt/hochgeladen über die API.

Benutzer sendet eine Anforderung an meine Image Host mit folgenden Parametern: upload.php?submit=true&action=upload&request=api&key=_SOME_API_KEY_. Ich nehme den API-key und überprüfen, wem es gehört -> Abrufen eines Benutzer-id, basierend auf den Schlüssel -> Speichere ich das Bild auf meinen server -> ich die Speicherung von Bildinformationen in meiner Datenbank (eine Benutzer-id jetzt) -> ich echo aus der URL.

Meine Fehler hier waren:

  • Konnte ich nicht senden ALLES von der 3rd-party-website, um meine Image Host asynchron
  • Ich konnte nicht alles wieder zurück zu meinem 3rd-party-website.

Warum diese Ausfälle? , Weil ich keine Ahnung habe, wie das erreichen dieser beiden wichtigen Schritte.

Einer meiner Ideen, um aufhören zu versuchen, zu senden $_FILES[] zu meinem Image Host, wurde versucht, senden Sie eine BILD STRING über POST auf meinem server und erstellen Sie das Bild selber. Ich konnte nicht, es war nur ein Gedanke von einem Mann, der hatte Zeit zum nachdenken.

So, das ist es: Mein großes problem, keine Lösung von mir.

Wenn Sie mehr Informationen benötigen, um mir zu helfen, leichter, bitte.

Danke.

Update

Wenn ich gerade erhalten könnte die Datei irgendwie (asynchron), würde ich es registrieren und in der Datenbank mit der is_api Feld mit einem Wert von 1, um Sie zu markieren, wie über die API (extern). Ich habe auf diese Weise erstellen Sie eine neue Datei namens viewer.php vielleicht und würde es akzeptieren einige Parameter zu wie viewer.php?request=api&key=_API_KEY_ und es würde wieder eine JSON-Seite mit dem link zu dem neuesten Bild von diesem externe api Benutzer. Das abrufen der Seite über JSON von der 3rd-party-website wäre ganz einfach. So, mit dieser Methode, die ich im Grunde nur brauchen, um zu erhalten das Bild irgendwie in meine Image Host und das abrufen von Teil zu schwierig wäre. Also, wie würde ich eine E - BILD STRING zu meinem Image Host über POST?

Wenn diese neue Idee von mir ist ausnutzbar, lassen Sie es mich bitte wissen.

  • Haben Sie versuchen, senden den link per JSON oder XML an einen Ajax-client oder schicken Sie es an den Ajax-client in gerader text?
  • Ich habe nicht versucht, etwas mit JSON, denn ich habe keine Idee, wie es zu benutzen, daher die Frage. Meine AJAX-Kenntnisse sehr begrenzt zu.
  • Klingt wie es sein könnte in der Regel sehr einfach in ein iframe, welches eine wirkliche form, die Beiträge zurück zu den Bild-host. Es wird Aussehen wie ajax (als iframe verhindert, dass die Seite in voller post) und zurück können Sie die links in der resultierenden Seite, weil die Antwort direkt an den iframe.
  • Könnten Sie mir zeigen, ein Beispiel von dem, was du sagst? Vielleicht ist Ihre Antwort tatsächlich funktionieren würde und dann könnte ich es akzeptieren.
  • Werfen Sie einen Blick auf dieses viralpatel.net/blogs/...
  • Ich bin mir nicht sicher, ob es machbar. Es klingt wie etwas, das der browser würde wollen, zu stoppen wegen Sicherheitsbedenken. Die Art und Weise, ich habe gesehen, dass es für die third-party-server zu akzeptieren, hochladen, übertragen Sie es dann auf die Bild-hosting-Website-server zu server. Die Bandbreite zwischen den Rechnern ist in der Regel Recht hoch, so dass der overhead ist akzeptabel.
  • Ich bearbeitet die Frage, Lesen Sie es bitte jetzt.

InformationsquelleAutor Dugi | 2013-02-05
Schreibe einen Kommentar