2017-10-10 11 views
0

奇妙な理由から、window.location.hrefを呼び出すと、リダイレクトが行われる前にポート80がURLに追加されています。結果のURLはそうのようになります。window.location.hrefを呼び出すとポートが追加される理由

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

は、なぜそれがリダイレクトがそもそも安全なページのために何が起こっているとき、ポート80を追加していますか?

コードは単純です:

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

元のページにポート80を当てていますか? 「」タグを追加しましたか?問題の[最小、完全で検証可能な例](https://stackoverflow.com/help/mcve)を教えてください。 –

+0

元のページがSSL経由で配信されています。ポート443 – albeethekid

答えて

0

あなたのサーバーがSSLとしてポート80を処理するような方法で設定されているようです。

ポートは、hostの一部です。 .com、.net、.onlineとよく似ています。

JSは、ブラウザが提供しているものを読み込みます。ブラウザはサーバー(nginx ?, apache?)が提供しているものを受け入れます。お問い合わせの際

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

をあなたは本質的に任意の貧しい人々の魂がこの問題に遭遇した念のためにあなたの文字列

+0

Googleのアプリケーションエンジンでホストされています。本当に奇妙なことはどこでもそのように振る舞いません。いくつかのページでは、期待通りに動作しますが、他のページでは動作しません。それは非常に狂っています。 – albeethekid

0

window.location.hostを連結している、私はそれを「修正」するために見つけたものを共有したいと思いました。

質問に記載されているように、GoogleのアプリエンジンでホストされているreactJSアプリは、window.location.hrefを呼び出して80をドメインに追加します。 URLの最後の文字としてスラッシュがある場合、またはURLのどこにでも疑問符が続くスラッシュがある場合は、そのようにするだけです。これらの2つのことを避けて、問題を軽減しました。

関連する問題