2012-09-21 44 views
0

比方说你是存储在浏览器URL的一些信息。然后您将 URL发送回服务器进行一些验证。 browser.URL对象有多可笑。某些用户是否可以轻松更改内存中的URL值?document.URL有多安全?

+0

更改brwoser的网址是什么?如果你想传递一些安全的数据到一个页面到另一个使用post方法,最简单的方法就是永远不要相信客户端 – Konstantin

+0

。或者也可以使用加密将数据一页发送到另一页。 –

回答

0

document.URLnot settable,但它当然可以通过在导航栏中或通过其他方式立即更改来手动更改URL中的任何值。

然而,这都应该是除了一点,因为无论你是“发回的URL服务器”,用户可以很容易地操纵被传递什么给服务器,而无需改变document.URL

+0

即使您更改导航栏document.URL中的URL,仍然会返回原始URL。像你说的那样,这可能是一个有争议的问题。 – specialscope

+0

@specialscope:这没有任何意义,如果你导航到一个新的URL,即使是用不同的查询字符串相同的地址,也没有这个概念中,URL您以前在是“原始”。 'document.URL'将始终报告您当前*的URL,甚至只是哈希值的变化都会反映出来。 –

+0

嗯没有尝试在我自己的网页在Web服务器,但使用铬的控制台它似乎是这种情况。例如。去stackoverflow.com并启动控制台。输入document.URL,它给了http://stackoverflow.com。接下来删除com,并再次做同样的事情,它仍然给http://stackoverflow.com。 – specialscope

1

我假设你专门引用browser.URL,因为JavaScript只能得到它,而不是设置。但没有人真的有黑客在内存或任何browser.URL,他们只需要键入URL任何他们想要的位置吧。