在url中传递数组的有效方法

时间:2013-07-22 18:32:28

标签: javascript html url

我正在构建一个webapp并且有一些我希望通过URL传递的数组,以便使我的应用程序的结果易于共享。

有一种有效的方法吗?我知道很多网站(比如youtube)使用某种编码来缩短网址,这会是一个选择吗?

提前致谢!

1 个答案:

答案 0 :(得分:0)

我怀疑你问的是你有一些用户可以改变信息等的页面,你想要一种方法来动态创建一个包含该信息的URL,这样就可以轻松地再次访问它。我在这里列出了两种方法:

  1. 使用查询字符串。在您的页面上,您可以使用一个“保存”按钮,该按钮会生成一个URL,其中包含有关用户操作的信息。例如,如果我有一个网页,我所做的就是将我的名字输入并选择一种颜色,我可以将其编码为http://my-website.com/page?name=John_Doe&color=red。然后,如果我访问该链接,您的网页可以访问JavaScript中的查询对象并加载已设置namecolor字段的网页。

  2. “YouTube风格”网址的方法是创建与该网页相对应的相关信息的哈希值。例如,如果我正在为用户创建服务来存储纯文本文件。这些文件具有以下属性:title, date, name, and body。我们可以创建字符串hash_string = someHashFunction(title+date+name)的哈希值。

  3. 当然,这是一个非常天真的哈希方案,但是这样的东西可能就是你想要的。在此之后,您的网址将类似于http://my-website.com/hash_string。这里的关键不仅是创建这些URL,还有一种方法可以将服务器端的请求路由到与hash_string对应的页面。