Frage

Ich möchte eine HTTP-Anforderung reagieren sowohl mit einer txt-Datei und eine HTML-Seite. Auf diese Weise kann der Client die Datei speichern und eine Zusammenfassung dieses Dateiinhaltes über eine HTML-Seite sehen.

Da die Datei im laufenden Betrieb erzeugt wird, muss ich Zustandsverwaltung auf dem Server verwenden Sie die Zusammenfassung auf die zweite Anforderung zu erzeugen. Ich möchte dies zu vermeiden, und dies in einer einzigen Reaktion einpacken.

Was wäre die benutzerdefinierte Action aussehen?

War es hilfreich?

Lösung

Dies war auch hier auf SO diskutiert .

Ich antwortete er wie folgt aus:

  

Nein, mehrteiliger Ausrüstung   Download (wie wie in E-Mail) nicht   aus Sicherheitsgründen nicht unterstützt. Es ist   ein "Drive-by-Download" genannt.

     

Beachten Sie, dass Google Mail diese Griffe durch   dynamisch die Dateien zippen auf. Sie   sollten auch.    http://forums.asp.net/t/1240811.aspx

Ich glaube nicht, jeder moderne Browser multipart / mixed unterstützt.

Andere Tipps

Sie können XML mit Bezug auf ein Stylesheet senden. Der Browser kann die Transformation tun und eine resultierende HTML-Ausgabe angezeigt werden soll.

und der Benutzer kann einfach do "File-> Speichern unter ...", um die XML-Datei zu speichern.

Warum die Zusammenfassung als normale HTML-Ansicht nicht machen und einen Link unter dieser Zusammenfassung, die zu einem separaten Actionpunkte, die binäre Daten zurückgibt ...

public ActionResult SendFile(int id)
    {
        File file = FileRepository.GetFile(id);
        byte[] fileData = file.FileData.ToArray();
        return File(fileData, file.FileMimeType, file.FileName);
    }

Ich habe einige Suche zu diesem Thema und zu meiner Überraschung, diese Menschen dies bereits getan scheint. Ich fand eine Beschreibung hier , aber es bietet keine öffentlichen testen URI, kann ich so nicht Test-Browser Verhalten zu diesem Thema. Es mentiones auch die Lösung einer Archivdatei an den Client zu senden. Aber ich nehme an, das ist nicht das, was Sie suchen, nicht wahr?

Hier ist ein weiterer Artikel ein Beispiel mit mehrteiliger zeigt Antworten. Leider scheint die Demo-URI nicht mehr zu funktionieren.

So ist die Situation folgendermaßen aus: HTTP mehrteiliger Reaktionen durchgeführt werden können. Es gibt Client (wenige) Bibliotheken, die in Anwendung Code zu handhaben. Browserverhalten getestet werden soll ( Hier ist eine Stimme ). Mit dieser Funktion scheint experimentell und können Sie empfehlen nur an beiden Enden der Kommunikation steuern können, um Interoperabilitätsprobleme zu beseitigen.

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