我已经从我们以前的开发人员那里继承了一些代码,并且发现了这段代码。
<?php
if($this->loginAction->isAuthenticated()){
?>
<script type="text/javascript">
window.parent.location.href="https:/home";
</script>
<?php
}
?>
我已经看了一段时间了,我不知道他为什么要在其中放置URL的快捷方式。我认为该网址应为https://mysite.com/home。我基本上不知道这段代码是做什么的。
编辑:我知道如果用户通过身份验证此代码是重定向,但我不知道奇怪的URL(https:/ home)在做什么。该代码正在工作。
感谢您的任何帮助。
Edit2:据我的同事说,这是JS的秘密之一:)要对其进行测试。这两行代码应具有相同的功能:
window.parent.location.href="https:/home";
window.parent.location.href="https://www.my-testing.com/home";
这是URI,根据此处的规范有效:https : //www.ietf.org/rfc/rfc2396.txt,在此处引用的第3部分:(粗体和突出显示是我的)这表示方案https其次是分隔符冒号:然后其余是可选的。因此,单个正斜杠可能被解释为“ https:// home ”的根或“完整” URI,或者仅被解释为当前提供程序的“ / home”。这样可能看起来像是“ https://www.example.com/home“,如果您的网站是www.example.com(不是,但在规范中也是保留名称),即您网站的DNS地址。请注意,如果该方案缺少“ // www .ourbug.net”,那么它将被转换为当前使用的方案(大多数资源使用http或https)
3. URI语法组件
URI语法取决于方案。通常,绝对URI编写如下:
<scheme>:<scheme-specific-part>
绝对URI包含正在使用的方案的名称(),后跟冒号(“:”),然后是字符串(the),其解释取决于方案。
URI语法不需要特定于方案的部分具有所有URI中通用的任何常规结构或语义集。但是,URI的子集确实共享一种通用语法,用于表示名称空间内的层次结构关系。此“通用URI”语法包含四个主要部分的序列:
<scheme>://<authority><path>?<query>
特定的URI中可能没有每个元素,但除外。例如,某些URI方案不允许使用组件,而其他URI方案则不使用组件。
absoluteURI = scheme ":" ( hier_part | opaque_part )
本质上是分层的URI使用斜杠“ /”字符来分隔分层组件。对于某些文件系统,“ /”字符(用于表示URI的层次结构)是用于构造文件名层次结构的分隔符,因此URI路径看起来类似于文件路径名。这并不意味着资源是文件,也不意味着URI映射到实际的文件系统路径名。
hier_part = ( net_path | abs_path ) [ "?" query ]
net_path = "//" authority [ abs_path ]
abs_path = "/" path_segments"
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句