Presenter::sendPayload způsobí stažení odpovědi jako soubor

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Honza Marek
Člen | 1664
+
0
-

V Texyle se nahrávají soubory pomocí takového falešného ajaxu, který funguje na principu odeslání formuláře do iframu. Pokud je (od revize 356) ale content-type odpovědi application/json, tak se soubor nabídne ke stažení místo normálního zpracování javascriptem (minimálně v Chrome a Firefoxu).

David Grudl
Nette Core | 8228
+
0
-

Bylo by vhodné vracet jeden z typu

  • application/json
  • text/plain
  • text/x-json
  • text/javascript

protože to umí zobrazit Firebug. Můžeš zkusit, se kterými to chodí dobře?

Honza Marek
Člen | 1664
+
0
-

Testoval jsem Firefox 3.5, Chrome 2.0, Operu 9.6, IE 8 vč. kompatibilního módu.

Shodnou se jen na text/plain, kromě IE umí ještě text/javascript.

David Grudl
Nette Core | 8228
+
0
-

Jestli tomu dobře rozumím, tak se to posílá TexylaPresenteru, tedy jeho chování máš pod kontrolou, že? Takže to chce vytvořit způsob, jak bys mohl uvnitř presenteru změnit content-type na jiný?

Honza Marek
Člen | 1664
+
0
-

Ano, to by stačilo. Třeba zjišťovat, jestli sem si to už ručně nenastavil a v tom případě to nepřenastavovat?

David Grudl
Nette Core | 8228
+
0
-

Tak už se hlavička Content-Type odesílá pouze v případě, že jsi ji dřív nenastavil.