すみません。教えてください。
元はWEBシステムで構築していたアプリケーションがあるのですが
今回一部の機能をVB6.0で提供することになりました。
VBで編集したデータはすでに構築済みのWEBサーバに送信して、
ユーザ認証などはそこの機能を使い回したいと思っています。
その、VBからサーバへの通信機能の実装にXMLHTTPを使用したいと考えています。
ログイン画面の取得は
Set HttpRequest = CreateObject("Microsoft.XMLHTTP")
Set HttpRequest = CreateObject("MSXML2.XMLHTTP")
Set HttpRequest = CreateObject("MSXML2.ServerXMLHTTP")
HttpRequest.open "GET", "http://〜/logon.jsp", False
HttpRequest.send
でうまく取得できました。
次にログイン画面でユーザID,パスワードを入れたのと同じ動作をXMLHTTPを使用して
実現しようとしたましたが、BODY情報の入れ方がわからないため
POST送信することが出来ずに困っています。
BODY部を設定する方法をご存知の方がいましたら、是非教えてください。
よろしくお願いします。
BODY情報は、sendメソッドの引数にVariant型のデータとして渡せばOK。
送る内容については、とりあえずフリーソフトの「InetSpy」などを使って、
ブラウザでの通信時と、XMLHTTPでの通信時の内容を比較してみるとか。
返答ありがとうございます。
データ型がStringだったせいで、うまくいってませんでした。
Variantにしたらばっちり送信されました。
パケットデータの確認は
開発OSがWindows2000だったせいか、InetSpyは動きませんでした。
そこで、WinPcapとAnalyzerをインストールしてキャプチャしました。
比較したおかげでヘッダの情報も1部足りないことがわかり、
HttpRequest.setRequestHeaderで足しました。
すごく助かりました。どうもありがとうございます!!
ツイート | ![]() |