在页面之间传递大字符串值的安全方法,我在服务器端使用PHP,在客户端使用jquery ajax
我正在做一个旅行门户网站,我必须在预订时显示列车列表,我从php获取json的详细信息并将json数据格式化为html。一切都很好
问题是我需要将选定的列车信息和所有列车信息传递到下一页,如果用户希望更改所选列车我需要返回上一页并再次显示列车列表而不查询服务器< / p>
如何以安全的方式将值传递到下一页?或者我如何跨页面保留大值?
答案 0 :(得分:2)
有几种方法可以做到这一点,其中没有一种方法是最佳的。
我认为最好的解决方案是#2:使用get url参数并通过url保持状态。 请注意各种浏览器中网址长度的限制,并“压缩”您的数据,以便最大限度地减少其占用空间。
执行此操作的方法通常是使用尽可能少的url参数,并使用逗号分隔的位标记。
例如,您可以从
更改网址参数 ?cars=ford,bmw,vw,mazda
至?c=23
然后对预定义变量按位c
进行测试,如:
var BMW = 1, VW = 2, FORD = 4, KIA = 8, MAZDA = 16;
if(c & BMW) { bmw is set}
if(c & VW) { vw is set}
if(c & FORD) { ford is set}
if(c & KIA) { kia is set}
if(c & MAZDA) { mazda is set}
这个例子并不意味着很漂亮,只是为了展示这个概念。
如果您通过这种方式最小化网址,则可以将大量数据存储在网址中,并且您不太可能遇到网址大小限制。
答案 1 :(得分:1)
正如Robert所说,你可能想要使用PHP Session。 否则你可以使用JSON并通过GET传递它,但是你可能会遇到有关GET参数长度的一些问题。 请注意,如果您不打算查询服务器,则所有数据都可以进行操作。
答案 2 :(得分:0)
你可以在页面之间使用POST吗?
答案 3 :(得分:0)
您可能会考虑将其存储在用户会话中。这可以使您的数据在服务器端“安全”,否则您将失去对用户的“数据控制权”。
答案 4 :(得分:-1)
bset安全方式是在数据库中为会话创建数据或向cookie添加数据(第一种方式更好),只传递id到另一页