redirect pomoci POST s predanim hodnot

vlkodlak
Člen | 119
+
0
-

Zdravím panové,

Mám jednoduchý formulář, který vypíše seznam dostupných souboru pomoci jQuery aktivuji nette.ajax a vše předa

$('.userfile').click(function () {
     var myfile = $(this).attr('data-file');
     $.nette.ajax({
	 type: 'post',
	 url: '?do=fileanalysis',
	 data: {
	    param: {
	       myfile: myfile,
	    }
	 }
   })
})

a předa vše krásně pomoci POST-u do handleru, ale co již mi nejde předat proměnou do jiného latte-cka, kde planuji pokracovat ve zpracovani a rád bych to také pomoci POST … pomoci GET by mi to šlo, ale nechci dávat uživateli prostor k editaci URL

....
public function handleFileAnalysis(array $param)
{
    if (is_file($this->parameters['folder']['upload'] . DS . $param['myfile']))
    {


		$this->redirect('Homepage:showcontext', $param); // pomoci GET to jde, ale nechci dávat uživateli prostor k editaci URL


    }
    else
    {
		$this->flashMessage('POZOR! Soubor "' . $param['myfile'] . '" neexistuje.', 'error');
	 	$this->redirect('this');
    }
}
...
Milo
Nette Core | 1253
+
+1
-

HTTP POST redirect nelze. Ale jelikož to děláš z JS, můžeš udělat další POST.

Spoléhat na to, že uživatel nezmění POST data není bezpečné.

vlkodlak
Člen | 119
+
0
-

@Milo děkuji za ušetřený čas

Editoval vlkodlak (25. 12. 2021 19:32)