Delphi 德尔福印地404后无响应内容
当Indy获得404时,我无法获得响应内容,它总是空的 例如,使用Indy访问,我得到一个404,contentstream(或分配的流)只是空的。 通过对THttpClient执行相同的操作,我还得到了404,但也得到了响应流中404页面的内容 所以我的问题是,当Indy是404时,我怎样才能得到它的回复内容 使用Indy访问,我得到一个404,contentstream(或分配的流)只是空的 根据设计,这是默认行为,用于防止未请求的意外错误数据损坏输出 当Indy是404时,我如何获得响应内容 有两种可能的方法:Delphi 德尔福印地404后无响应内容,delphi,indy,Delphi,Indy,当Indy获得404时,我无法获得响应内容,它总是空的 例如,使用Indy访问,我得到一个404,contentstream(或分配的流)只是空的。 通过对THttpClient执行相同的操作,我还得到了404,但也得到了响应流中404页面的内容 所以我的问题是,当Indy是404时,我怎样才能得到它的回复内容 使用Indy访问,我得到一个404,contentstream(或分配的流)只是空的 根据设计,这是默认行为,用于防止未请求的意外错误数据损坏输出 当Indy是404时,我如何获得响应内
TIdHTTP
在HTTP错误上引发EIdHTTPProtocolException
异常。响应数据将位于其ErrorMessage
属性中- 在
属性中启用TIdHTTP.HTTPOptions
标志hoNoProtocolErrorException
- 使用重载版本的
,该版本具有TIdHTTP.Get()
参数,在该参数中传递404(或您想要的任何其他错误响应代码)aignoreplies
TIdHTTP.HTTPOptions
属性中启用最近添加的hoWantProtocolErrorContent
标志,可以避免这种情况(请参阅)是存储在
EIdHTTPProtocolException
的ErrorMessage
中的内容,与Indy 403错误类似:谢谢Remy,答案完全接受。我使用了ErrorMessage值,它现在可以正常工作了!