ソフトウェア開発者の日常

こだわりなく書きたいことを書いていきます。

Google Chromeのソース表示は、ソースを表示しようとしたページへ遷移した際のメソッドを再度実行しているみたい

Google Chromeでソース表示をすると、期待した結果が表示されなくて悩みました。

f:id:AJYA:20150219053837j:plain
photo credit: Spaghetti Junction - Tyburn Road - Google Chrome billboard via photopin (license)

ソース表示ではエラーの表示

最後の処理結果のページでJavaScriptに値を動的に埋め込んで、別のサイトを呼び出すようにWebサイトを修正しました。
サーバーサイドはPHPが動作して、PHPで動的に埋め込んでページを生成しています。

デバッグGoogle Chromeでしていて、ソース表示をすると、動的に埋め込んだ値を保持している筈の変数が存在しないとPHPのエラーが表示されました。

処理結果のページなので、セッションの破棄や変数の初期化等の処理をしています。
影響がでるところで動的に埋め込んだのかと確認しましたが、そんなこともありません。
いろいろ変更して試してみても、ソース表示をすると必ずエラーが表示されています。

ソース表示はメソッドを再度実行?

ソース表示をよく見ると、エラーが発生した場合に表示する文章が表示されています。
正常の場合に表示する文章は表示されていません。

ソース表示の元の処理結果のページは、正常の場合に表示する文章が表示されています。
エラーが発生した場合に表示する文章は表示されていません。

エラーが発生した場合に表示する文章は、セッション変数の値が空文字なら表示するようにコーディングしてあります。
このことから、Google Chromeが処理結果のページに遷移した際のメソッドを再度実行して、ソース表示をしているのではないかと推測しました。

Firefoxでは発生しない

Google Chromeでは再度実行されてエラーが表示されるなら、Firefoxではどうかと確認したところ、ソース表示をしてもエラーは表示されませんでした。

ソース表示をするなら、Firefoxを使うべきです。
Google Chromeでソースを確認するなら、デバッガで確認すれば表示されないので、デバッガを使うべきです。