質問: CreateObject("MSXML2.XMLHTTP") Call objHttp.Open("GET", url, False) Call objHttp.send '変数宣言などは省略 ``` ところがレスポンスを詳細にチェックすると、全く期待どおりになっていません。 不思議なのは、サーバーのログを見ると、リクエストを受けた形跡が無かったことです。 試しにサーバーを落として、VBAより再実行すると、先ほどと全く同じレスポンスが返ってきます。 サーバー上がっていないにもかかわらず、タイムアウトなどの通信エラーが発生しないことは解せません。 ちなみに、上記コードのOpenメソッド内のurlをブラウザで表示すると、期待どおりの結果が返ってきます。 その場合、サーバーログにてリクエストを受けた形跡が残っています。 また、ローカルPCにおいてWebサーバーは起動していません。 実行環境:Win7, Excel2016, CentOS7.2, python3.6, flask1.0.2 恐らく正常にリクエスト送信できていないと思うのですが、どのような原因が考えられるでしょうか?
回答: `XMLHttpRequest`で`get`すると、そのURLのキャッシュがあればキャッシュを読み込みます ブラウザでキャッシュ削除を試してみてください 結果が変わるなら間違いないと思います 対応方法について `objHttp.open`と`objHttp.send`の間に以下の記述を追記してみてください ``` objHttp.setRequestHeader "If-Modified-Since", "Thu, 01 Jun 1970 00:00:00 GMT" ```