首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >压缩URL中的参数

压缩URL中的参数
EN

Stack Overflow用户
提问于 2010-01-13 20:00:27
回答 9查看 3.7K关注 0票数 5

在我的网站上的网址可以变得很长,这是我的理解,网址是与http请求传输。所以我的想法是压缩url中的字符串。

通过我在互联网上的搜索,我找到了关于使用短url的建议,然后将它链接到长url。我不喜欢使用这个解决方案,因为我将不得不做一个额外的数据库检查,以转换之间的长和短的网址。

这在我的脑海中留下了三个选择:

  1. 散列,我不认为这是一个选择。如果你想要一个安全的散列算法,它将是压缩url字符串,基本上是让服务器在获得url parameters.
  2. Changing时按下字符串,所以它不具描述性,这很糟糕,因为它会使我的开发变得更加困难(这是一个人的项目)。

考虑到市面上可能存在的大量操作系统/浏览器,我认为似乎其他人都尝试过这个方法,或者有一些聪明的建议。

如果重要的话,url参数可以到达100+字符。

示例:

代码语言:javascript
复制
mysite.com/Reports/Ability.aspx?PlayerID=7737&GuildID=132&AbilityID=1140&EventID=1609&EncounterID=-1&ServerID=17&IsPlayer=True

编辑:

让我澄清一下自动柜员机,这不是破坏网站。这更多的是关于我学习找到一个好的解决方案(我很清楚这是微优化,我的网站是非常快的atm ),并使我的网站更快(挑战自己,成为一个更好的程序员)。

还有一个美观的问题,我个人认为URL比地址栏更长看起来很糟糕。

EN

回答 9

Stack Overflow用户

发布于 2010-01-13 20:20:00

你有一些相互冲突的需求,因为你想要缩短/压缩url,而又不想让它更具描述性。通过缩短URL的性质,您将在一定程度上减少它的描述性。

据我所知,你的目标是通过发送更少的请求来优化。你提到了100+字符,而不是1000+,我想这意味着它们不会变得那么大?在这种情况下,我会认为这是一个不必要的微优化。

为了补充之前使用POST的建议,如果你不想做完整的url缩写,一件简单的事情就是只缩短键而不是使用全名,例如:

代码语言:javascript
复制
mysite.com/Reports/Ability.aspx?pid=7737&GID=132&AID=1140&EID=1609&EnID=-1&SID=17&IsP=True

这些显然不太具有描述性。

但就像我说的,你真的有长URL的问题吗?

票数 2
EN

Stack Overflow用户

发布于 2010-01-13 20:11:27

我不太明白你对长URL的问题是什么?一般来说,我会尽量避免它们,但如果这是必要的,那么你就不会依赖用户记住它,所以为什么要经历所有的压缩麻烦?即使URL为1000个字符(~2KB),页面请求也不会很慢。

但是,如果可能的话,我会考虑使用POST而不是GET来美化URL,但这当然取决于您的实现/环境。

票数 1
EN

Stack Overflow用户

发布于 2010-01-13 20:26:30

这里建议几次使用POST而不是GET。我强烈建议不要根据URL的外观来选择HTTP操作。除了在浏览器中的显示方式之外,还有更多的选择。

快速概述:

http://www.w3.org/2001/tag/doc/whenToUseGet.html#checklist

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2056393

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档