Frage

Alle meine bisherigen Forschungen deuten darauf hin, dass dies nicht möglich ist, aber ich hoffe, dass jemand hier einige listige Ideen hat.

Ich habe ein Formular auf einer Website, mit dem Benutzer viele URLs hochladen können, um einer Liste auf dem Server hinzuzufügen. Bei jeder URL gibt es eine Menge serverseitiger Verarbeitung. Um Zeitüberschreitungen zu vermeiden und den Fortschritt anzuzeigen, habe ich das Upload mit JQuery implementiert, um die URLs einzeln mit AJAX einzureichen.

Das funktioniert alles gut. Ein Teil der Verarbeitung in jeder URL ist jedoch, sie gegen die vollständige Liste zu widmen. Der AJAX -Aufruf gibt einen Status zurück, der entweder ein erfolgreiches Upload oder eine Ablehnung aufgrund von Duplizierung angibt. Im Verlauf des Uploads sage ich dem Benutzer, wie viele URLs als Duplikate abgelehnt wurden (zusammen mit Gesamtfortschritt und ETA).

Das Problem ist nun, wie der Benutzer eine vollständige Liste der fehlgeschlagenen doppelten URLs gibt. Ich habe sie in einem Array in meinem JQuery aufbewahrt und möchte, dass der Benutzer auf einen Link im Formular klicken kann, um eine Textdatei mit diesen URLs herunterzuladen. Ist dies möglich, nur die clientseitige Verarbeitung zu verwenden?

Die serverseitige Verarbeitung verarbeitet im Grunde genommen ein einzelnes Schlüsselwort jeweils. Ich muss die Duplikate lieber nicht in einer Datenbanktabelle mit einem Sitzungsschlüssel speichern, der mit jedem Ajax-Anruf gesendet wird, und wird dann am Ende verwendet, um die Server-Seite der Textdatei zu generieren (und dann einige aufgeräumt werden Zeit später). Ich kann sehen, wie das geht, aber es scheint sehr klobig und ein bisschen 20. Jahrhundert.

War es hilfreich?

Lösung

Ich habe es noch nicht selbst benutzt, aber Herunterladen wurde für genau diesen Zweck gebaut, denke ich.

Downloadify ist eine winzige JavaScript + Flash -Bibliothek, die die Erzeugung und Speichern von Dateien im laufenden Flug, im Browser, ohne Serverinteraktion ermöglicht.

Es wurde von erstellt von Doug Neiner Wer ist auch ziemlich aktiv auf Stack Overflow.

Es braucht Flash 10, um zu arbeiten.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top