当我调用window.location.href时,为什么要添加端口

时间:2017-10-10 20:29:05

标签: javascript

由于某些奇怪的原因,当我调用window.location.href时,在重定向发生之前,端口80正被添加到URL。生成的URL如下所示:

https://domain:80/user/create?createProvider=1

为什么在为安全页面开始重定向时添加端口80?

代码很简单:

  window.location.href= "/user/create/?createProvider=1";

2 个答案:

答案 0 :(得分:0)

似乎您的服务器配置为将端口80视为ssl。

该端口是host的一部分。很像.com,.net,.online ......

JS读取浏览器提供的内容。浏览器接受服务器(nginx?,apache?)正在服务它。

致电时:

window.location.href= "/user/create/?createProvider=1";

你基本上将window.location.host与你的字符串连接起来

答案 1 :(得分:0)

为了防止任何可怜的灵魂遇到这个问题,我想分享我发现的东西"修复"它。

如问题中所述,我在Google应用引擎上托管的reactJS应用会在调用window.location.href时将80附加到域中。并且只会在某些情况下这样做:如果有一个斜杠作为URL的最后一个字符,或者在URL中的任何地方有一个斜杠后跟一个问号。避免这两件事缓解了这个问题。