用Guzzle将物体传递到身体

时间:2014-04-24 08:48:53

标签: php rest guzzle

我正在使用Guzzle执行一些REST API调用,我觉得非常方便。

我想传递一个对象,该对象通常通过cURL使用-d标志发送,但目前没有预期的结果。

$request = $client->post('rest/user/current/resources/test', [], [
                                     'auth' => [self::USERNAME, self::PASSWORD],
                                     'body' =>  ['skeletonTest' => $skeletonTest ]
                                    ]);

            $response =$request->send();

           $this->dd($response);

来自文档:

-d 'skeletonTest={skeletonTest}' 

第一期:

 HTTP/1.1 401 Unauthorized

虽然凭证是正确的。

第二期:

PHP Notice:  Undefined variable: response in ....

这可能是什么问题? 我也尝试过使用:

$request= $client->createRequest('POST','....');

但getBody()不会返回有意义的内容。

有什么想法吗?

更新

当我提供这个时:

            $request = $client->post('rest/user/current/resources/test', [
                                     'auth' => [self::USERNAME, self::PASSWORD],
                                     'body' =>  ['skeletonTest' => $skeletonTest ]
                                    ]);

           $this->dd($request->send()->getBody());

输出是:

PHP Fatal error:  Uncaught exception 'InvalidArgumentException' with message 'Invalid resource type: object' in

因此,当我删除post()方法中的第二个参数时,没有401但是Invalid Argument。 $ skeletonTest是一个空类的对象(stdClass)。

0 个答案:

没有答案