-3

Get send request to the server and receive error 409, プログラムが中断されました, try except を使用して彼女を無視します.エラー 409 と XML 応答もありました.どうすればそれを読むことができますか?

HTTP.Response.gettext - サーバーに関する情報のみを提供します。

http.response.rawheaders.commatext - サーバーに関する情報のみ

コンテンツの長さの一致

答えはスニファーで見ることができます

プログラムの中で答えが得られますか?

4

1 に答える 1

1

TIdHTTPサーバーから 409 などの HTTP エラーを受信すると、例外EIdHTTPProtocolExceptionが発生し、エラーのコンテンツ テキストがそのErrorMessageプロパティに表示されます。

try
  IdHTTP1.Get(...);
except
  on E: EIdHTTPProtocolException do
  begin
    // HTTP-specific error
    ShowMessage(Format('HTTP Error'#13'Response: %d %s'#13'Content: %s', [E.ErrorCode, E.Message, E.ErrorMessage]));
  end;
  on E: Exception do
  begin
    // any other error
    ShowMessage(Format('Exception'#13'Class: %s'#13'%s', [E.ClassName, E.Message]));
  end;
end;

パスワード エラーが発生すると、次のようなポップアップ メッセージ ボックスが表示されます。

HTTP Error
Response: 409 Conflict
Content: <?xml version="1.0" encoding="UTF-8" standalone="yes"?><error code="10003" appid="1"><failure cause="INVALID_PASSWORD" field="password" value="******"/></error>
于 2012-10-18T18:01:28.297 に答える