Calender
Sun Mon Tue Wed Thu Fri Sat
      1
2345678
9101112131415
16171819202122
23242526272829
30      
<< September 2018 >>
広告
SEARCH

SELECTED ENTRIES
RECENT COMMENTS
RECENT TRACKBACK
CATEGORIES
ARCHIVES
LINKS
PROFILE
OTHERS
SKYPE
PC: skype.jojo.jp
chat
iPad: iphone.jojo.jp
chat call
THANKS



本日:
昨日:
多言語
広告
 ▼▲ 作業日報 ▼△
    What's under the hood?
<< 晩飯 | main | 晩飯 >>
Msxml2.XMLHTTP 同期モード
「ウェブサービス中からデータを取り出しているアプリケーションでデータが取れてないことがある」と言われいろいろ調べていたら

MSXML2.XMLHTTPはデフォルトでは、非同期らしい!

MSXML2.XMLHTTPの第三パラメータがシンクロモード
Dim objXML

set objXML = CreateObject("MSXML2.XMLHTTP");

objXML.open "GET","http://hogehoge.ne.jp/aaa/bbb.xml",False '同期

 True.....非同期モード(規定値)
 False....同期モード

 非同期で send処理 を行い state値をとったりしていると、VBでは「エラーを特定できません」「この操作を完了するのに必要なデータは、まだ利用できません」例外となることがあります。
 サーバ側の返答はresponseTextで受け取れますが、responseXMLでDOM受取りできます。XMLHTTPはキャッシュが効いてしまいますのでテストにはキャッシュクリアする必要があります
キャッシュクリア例(PHP)
header ("Pragma: no-chache");//http 1.0
header ("Cache-Control: no-chache ;must-revalidate");//http 1.1
header ("Expires: Mon, 1 Jan 1990 01:01:01 GMT");
 
やば〜、前のソースみてたら殆ど第三パラメータ与えてないよ・・
よく問題でなかったな・・
| yacht | 13:29 | comments(0) | trackbacks(0) |









http://blog.jojo.jp/trackback/834013