jyggen/Coll请求的响应基于Symfony 2 Response
,此处对此进行了说明。
在我的代码中,在执行Request
之后,必须同时满足Request.isSuccessful()
和Response.isSuccessful()
条件,脚本才能继续。
如果Request
失败,我可以使用$request->getErrorMessage()
来记录合适的异常。
如果Request
成功了,但是Response
失败了,我需要一些有用的东西来记录它
我尝试过$response->getContent()
和$request->getErrorMessage()
,它们都没有返回任何结果。
我目前已经决定暂时使用$response->getStatusCode()
,但我宁愿有更多信息。执行响应的var_dump
显示,状态代码和状态代码文本都存储为受保护的值,该文本提供了一条消息和代码,尽管这无论如何都可以从代码值中计算出来。
有没有我错过的电话,或者找到Response
故障原因的更好方法?
我不完全确定你想访问什么响应数据,你能给我更多信息吗?
您可以始终使用$request->getRawResponse()
来检索原始HTTP输出。该方法与$request->getInfo()
(请参阅curl_getinfo
)相结合,应该可以为您提供有关响应的所有可用信息。
但是,您实际上不应该手动解析HTTP输出。如果我错过了让公众能够访问一些重要的响应信息,请在GitHub上创建一个问题。
对总故障使用$request->getErrorMessage()
,对无效响应使用$response->getStatusCode()
,目前看来已经覆盖了足够的基础。当Request
使用无效的Response
成功时,我可以使用一种方法返回失败的URL和响应状态代码,但我应该能够找到它。