doujiu7704 2013-01-18 19:21
浏览 190
已采纳

适用于PHP 2的AWS S3 SDK - 获取HTTP请求/响应字符串

I have a generic HTTP file access API which I use for the system I'm working on. To make it as flexible as possible, it returns request and response data in the form of HTTP strings.

I'm currently implementing a version which interacts with the S3, via the AWS SDK for PHP 2.

Is there an easy way to quickly get the Request and Response HTTP requests which the S3Client makes when performing operations? If not, is there a more piecemeal way which I can use to not have to fake it?

Basically, I'd like the full-text of both the Request and Response on demand, or at least access to relevant data (headers, response codes, URLs, etc) so I can properly populate the return data for my framework.

Thanks.

  • 写回答

2条回答 默认 最新

  • dongsuichi6529 2013-01-23 21:35
    关注

    You can get either the request or response object from a command object. Assuming $s3 holds an instance of Aws\S3\S3Client, you could do something like this:

    $command = $s3->getCommand('ListObjects', array('Bucket' => '<bucket-name>'));
    $request = $command->getRequest();
    $response = $command->getResponse();
    

    Those objects have methods for viewing the body, headers, status codes, etc. and you can cast them to string to see the string form.

    If you want to quickly see the request and response as you are executing commands, you can attach the wire logger, and see what comes out on STDOUT (or STDERR)

    $s3->addSubscriber(\Guzzle\Plugin\Log\LogPlugin::getDebugPlugin());
    $s3->listObjects(array('Bucket' => '<bucket-name>'));
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog