使用TIdHttp时:
Memo1.Text := IdHTTP1.post(url,data);
如果没有给出http错误,我可以获得memo1的响应内容。但是当它提出http错误请求时,Indy并没有给我内容。我也在使用try..except,但它只能阻止错误框,但仍然没有给我内容。
即使它返回http错误,我如何获取内容?
答案 0 :(得分:6)
发生HTTP错误时,TIdHTTP
会引发EIdHTTPProtocolException
异常。该异常包含其ErrorCode
属性中的HTTP状态代码,其Message
属性中的HTTP状态文本以及其ErrorMessage
属性中的响应数据。
答案 1 :(得分:2)
试试这段代码
Try
Memo1.Text := IdHTTP1.post(url,data);
except on e: EIdHTTPProtocolException do
begin
memo1.lines.add(idHTTP1.response.ResponseText);
memo1.lines.add(e.ErrorMessage);
end;
e.ErrorMessage将为您提供有关错误请求的一些信息。