通常、ブラウザでボタンが押されPOSTされた場合、サーバ側プログラムが呼び出された場合、サーバ側プログラムでデータ更新などをし、POST先(action)に遷移します。
この際に、サーバ側プログラムから別のプログラムを呼び出し、結果を受け取ってからPOST先に遷移したい場合、ソケット通知を使います。
Set objXmlHttp = Server.CreateObject("MSXML2.XMLHTTP")
objXmlHttp.Open "POST", "https://aaa.bbb.ccc/ddd.asp", False
objXmlHttp.setRequestHeader "Content-Type","application/json"
objXmlHttp.send strPostData
If objXmlHttp.readyState = 4 And objXmlHttp.Status = 200 Then
Response.Write objXmlHttp.responseText
End If
上記の例では、サーバ側で
https://aaa.bbb.ccc/ddd.asp
にソケット通知し、結果を取得します。
readyState=4 かつ status=200の場合、正常受信と判断できます。
受信データをjsonで受け取る場合は、下記のように処理することによりjsonの項目名を指定して値を取得できます。
Set json = obj.CodeObject.jsonParse(objXmlHttp.responseText)
strId= obj.CodeObject.getId(json)
jsonの処理については別のセクションで解説します。