首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我是如何从guzzle6异常中得到身体的

我是如何从guzzle6异常中得到身体的
EN

Stack Overflow用户
提问于 2015-09-17 13:03:04
回答 1查看 474关注 0票数 0

所以我有下面的代码

代码语言:javascript
复制
    try {
        $response = $client->request('POST', 'http://dev.api.example.com/v1/partners', [
            // params
        ]);
    } catch (ClientException $ex) {
        Debug::dump($ex);
        die;
    }

现在,我故意发送错误的数据进行测试,api发送了400段代码,因为缺少了一些东西,而且我正在使用try和catch块来捕获它。现在,我想向主体展示api返回的内容。我试过以下几种方法

代码语言:javascript
复制
$ex->getResponse()->getBody()

但它只返回以下内容。

代码语言:javascript
复制
GuzzleHttp\Psr7\Stream Object
(
    [stream:GuzzleHttp\Psr7\Stream:private] => Resource id #73
    [size:GuzzleHttp\Psr7\Stream:private] => 
    [seekable:GuzzleHttp\Psr7\Stream:private] => 1
    [readable:GuzzleHttp\Psr7\Stream:private] => 1
    [writable:GuzzleHttp\Psr7\Stream:private] => 1
    [uri:GuzzleHttp\Psr7\Stream:private] => php://temp
    [customMetadata:GuzzleHttp\Psr7\Stream:private] => Array
        (
        )

)

当api在postment中发送时

代码语言:javascript
复制
{
  "success": false,
  "error": {
    "code": 400,
    "message": "The name has already been taken.<br />The email field is required."
  }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-17 14:30:38

好吧我已经弄清楚了。您所需要做的就是在例外情况下执行以下操作。

$ex->getResponse()->getBody()->getContents()

截至

http://docs.guzzlephp.org/en/latest/psr7.html

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32630999

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档