【发布时间】:2020-11-17 06:05:49
【问题描述】:
我正在尝试为 GraphQL 调用编写单元测试,但由于“form_params”字段与 GuzzleHttp\Psr7\Stream 对象内容不匹配而失败。我正在查看一个使用 REST api 调用的现有单元测试,并尝试使用 Guzzle 打印出其“form_params”的内容。在文档中找不到任何内容
$url = \GuzzleHttp\uri_template($url[0], $url[1]);
$options = [
'form_params' => [
'enrollment[user_id]' => 'sis_user_id:' . $userId,
'enrollment[type]' => $enrollmentType,
'enrollment[enrollment_state]' => $enrollmentState,
'enrollment[role_id]' => $role_id
]
];
//the response
$response = $this->client->post($url, $options);
var_dump($response->getBody()->getContents()); // trying to get form_params
转储行给了我这个类似于 form_params 但不完全
"{"sis_section_id":"Section-S15-99190","type":"TeacherEnrollment","role":null,"user":{"id":1,"sis_user_id":234,"login_id":"thackerj","name":"Jeremy Thacker"},"grades":{"unposted_current_grade":null,"unposted_final_grade":null}}"
【问题讨论】:
-
请不要使用
\GuzzleHttp\uri_template()函数,在未来的Guzzle版本中会被移除