Sca*_*olf 2 post json laravel guzzle
我正在使用 guzzle 查询我的 API。
\n\n$client = new Client();\n $response = $client->post(\'xxxxxx\',\n array(\n \'headers\' => array(\'Content-Type\'=>\'application/json\'),\n \'json\'=> array(\n "type" => 0,\n [...]\n )\n )\n );\n\n //$response = json_decode($response);\n\n dd($response->getBody());\nRun Code Online (Sandbox Code Playgroud)\n\n这应该输出类似这样的内容:
\n\n{\n "returnCode": 0,\n "success": true\n}\nRun Code Online (Sandbox Code Playgroud)\n\n但我却得到了别的东西。
\n\nStream {#230 \xe2\x96\xbc\n -stream: stream resource @12 \xe2\x96\xbc\n wrapper_type: "PHP"\n stream_type: "TEMP"\n mode: "w+b"\n unread_bytes: 0\n seekable: true\n uri: "php://temp"\n options: []\n }\n -size: null\n -seekable: true\n -readable: true\n -writable: true\n -uri: "php://temp"\n -customMetadata: []\n}\nRun Code Online (Sandbox Code Playgroud)\n\n谁能帮助我或告诉我我做错了什么?我想发送原始发布数据,然后获取原始发布数据,然后我想保存(例如在数据库中)。
\ngetBody()
Run Code Online (Sandbox Code Playgroud)
返回一个流接口。您想要获取该流的内容,因此:
$response->getBody()->getContents();
Run Code Online (Sandbox Code Playgroud)
就是你正在寻找的
笔记
根据文档,您还可以将流接口转换为字符串,但我得到了不同的结果。getContents()总是做它需要做的事情,所以这就是我的解决方案。
| 归档时间: |
|
| 查看次数: |
1768 次 |
| 最近记录: |