当前位置: 首页 > 面试题库 >

为什么URL的哈希部分在服务器端不可用?

蓝恩
2023-03-14
问题内容

例如,如果我输入URL:

http://www.foo.com/page.php?parameter=kickme#MOREURL

然后在服务器上没有任何部分:#MOREURL

是否可以在没有jQuery AJAX的情况下将这些部分发送或获取到服务器?


问题答案:

不,它仅对浏览器可用 ,因此您必须使用Javascript处理它。服务器无法读取它。

说明:
基本上,页面URL的散列部分(#符号后面的部分)仅由浏览器处理-
浏览器从不将其传递给服务器。可悲的是,这是HTML标准的一部分,无论您是否使用IE或任何其他浏览器(就此而言,还是PHP或任何其他服务器端技术)都是相同的。

这是 维基百科 所说的:

片段标识符的功能与URI其余部分的功能不同:即,其标识符处理 完全在客户端,而没有服务器的参与
。当代理(例如Web浏览器)从Web服务器请求资源时,该代理将URI发送到服务器,但不发送片段。相反,代理程序等待服务器发送资源,然后代理程序根据片段值处理资源。在最常见的情况下,代理将网页向下滚动到锚元素,该锚元素的属性字符串等于片段值。其他客户端行为也是可能的



 类似资料:
  • 问题内容: 我的Java Servlet通过该方法利用了Facebook Graph API 。这已经工作了好几个星期了,但是今天我正在测试的查询的长度比以前的查询要长得多- 大约2300个字符。此查询导致引发错误。 两个小时后,我发现根本原因是App Engine 对要获取的URL的长度(即从您的GAE应用程序到网络上的其他地方)有严格的限制。此外,此问题仅在生产服务器上显现出来,因此在上线之前

  • 也许我没有看到什么或者我忘记了在计算运行时考虑的事情,所以请告诉我。

  • 问题内容: 我偶然发现了一篇博客文章,详细介绍了如何在Python中实现powerset函数。因此,我尝试用自己的方式进行操作,并发现Python显然无法拥有一组集合,因为set无法哈希。这很烦人,因为功率集的定义是它是一组集合,而我想使用实际的集合操作来实现它。 Python集不可散列是否有充分的理由? 问题答案: 通常,在Python中只有不可变的对象才是可哈希的。的不可变的变体- -是哈希的

  • 问题内容: 我正在运行一些用C语言编写的代码,该代码从其他人编写的哈希库(md5.c和md5.h)中调用md5哈希功能。我一直看到的奇怪行为是: 散列工作完美=我对一个字符串进行了散列,它得出的确切散列证明了我已将其与其他多个来源一起使用。 当在我的OSX机器上编译和运行时,散列功能可以完美地工作,并且所计算的散列完全符合应有的方式。 相同的代码,没有更改在基于Linux的服务器上上载和编译,并且

  • 问题内容: 某些哈希表方案(例如布谷鸟哈希或动态完美哈希)依赖于通用哈希函数的存在以及能够收集表现出冲突的数据并通过从通用哈希函数系列中选择一个新的哈希函数来解决这些冲突的能力。 。 不久前,我试图在以杜鹃哈希为后盾的Java中实现哈希表,并遇到了麻烦,因为尽管所有Java对象都有一个函数,但返回的值对于每个对象都是固定的(当然,除非对象更改)。这意味着如果没有用户提供外部家族的通用哈希函数,就不

  • 从原理到应用分析什么是哈希? 一、什么是哈希? 哈希(hash):将任意长度的输入(关键字),通过Hash算法变成固定长度的输出。这个映射的规则就是对应的Hash算法,而原始数据映射后的二进制串就是哈希值,通常哈希值代表了关键字的存储位置。 但是为什么要这样做呢?或者说,哈希是怎样来的呢? 哈希的出现解决了两个问题:存储和搜索。 1. 存储(数据结构):如果在容器中保存对象及其关联的键,并且不用键