Idhttp.Getメソッドに問題があります。デフォルトではブロッキングモード(回答が次の行に移動するのを待つ)で動作していると思いましたが、回答が別の行に移動するのを待っていないことがわかりました。スレッドで使っていますが、問題ないと思います。コードは次のとおりです。
IdHTTP1:= TIdHttp.Create(Application);
IdHTTP1.ConnectTimeout:= 10000;
IdHTTP1.Request.Clear;
IdHTTP1.Request.BasicAuthentication:= true;
IdHTTP1.Request.Username := Username;
IdHTTP1.Request.Password := Password;
try
IdHTTP1.Get(PbxURL); **//this should STOP here and wait for answer don't?**
HttpCode:= IdHTTP1.ResponseCode;
except
on E: EIdHTTPProtocolException do
HttpCode := IdHTTP1.ResponseCode;
end;
if HttpCode=200 then
Memo1.Lines.Append('Valid Get!');
したがって、「Get」メソッドの後、「Get」が完了するのを待たずに実行を続行するため、正しいHttpCode値を取得していないことに気付きました。どうすればこの問題を解決できますか?