2016-11-19 1 views
1

Я пытаюсь перенаправить URL-адрес ('form', 'results') из forminput.html с параметрами (в моем случае это огромный словарь i.e. output). Но когда веб-страница перенаправляется на results.html, все параметры также включаются в веб-адрес Url, что мы не хотим по двум причинам: безопасности и длинного типа URL-адресов.
Можете ли вы мне помочь в этом сценарии?
Заранее благодаренURL-адрес перенаправления с параметрами в контроллере web2py

Вот пример URL.
http://127.0.0.1:8000/AWS/form/results?csp=&ibx=&metro=&o=%7B%22se1.sv1%22%3A+%7B%22xe-0%2F2%2F1%22%3A+%7B%22Util%22%3A+66%2C%22c_name%22%3A+%22dxcon-fh26tz6s%22%2C%22c_serial%22%3A+%2215563580-A%22%7D%2C%22xe-2%2F1%2F3%22%3A+%7B%22Util%22%3A+31%2C%22c_name%22%3A+%22dxcon-fgptdigg%22%2C%22c_serial%22%3A+%2220130277-A%22%7D%2C%22xe-3%2F0%2F3%22%3A+%7B%22Util%22%3A+0%2C%22c_name%22%3A+%22SFDC-SV3-CX-SEC-01%22%2C%22c_serial%22%3A+%2220375541-A%22%7D%2C%22xe-3%2F1%2F2%22%3A+%7B%22Util%22%3A+0%2C%22c_name%22%3A+%22dxcon-ffj66n3f%22%2C%22c_serial%22%3A+%2220347645-A%22%7D%2C%22xe-3%2F2%2F3%22%3A+%7B%22Util%22%3A+0%2C%22c_name%22%3A+%22dxcon-fgsmxuat%22%2C%22c_serial%22%3A+%2220366330-A%22%7D%7D%7D#

/*this my controller, form.py*/ 

my_funct(): 
    out_dict=dict() // out_dict is a huge dictionary with 100 of keys and values 
    return out_dict 

define forminput(): 
    outout=my_funct() 
    redirect(URL('form','results', vars= dict(out=output))) 

define results(): 
    data=request.vars['out'] 

ответ

1

Вы можете вместо этого хранить данные в сессии (которая остается на сервере):

define forminput(): 
    session.data = my_funct() 
    redirect(URL('form', 'results')) 

define results(): 
    data = session.data 
+0

Спасибо большое, Энтони. Это сработало для меня. Именно этого я и хотел. – user7180675

Смежные вопросы