【发布时间】:2021-08-30 18:38:45
【问题描述】:
我有这个代码:
$httpParams = [
'textData' => $content,
'xmlFile' => new \CurlFile($params['file']->getPathName())
];
$curlHandle = curl_init('http://url.com');
curl_setopt($curlHandle, CURLOPT_HEADER, false);
curl_setopt($curlHandle, CURLOPT_POST, true);
curl_setopt($curlHandle, CURLOPT_POSTFIELDS, $httpParams);
curl_setopt($curlHandle, CURLOPT_RETURNTRANSFER, true);
$curlResponse = curl_exec($curlHandle);
curl_close($curlHandle);
dump($curlResponse);die();
我在$curlResponse 中有回复,状态 = 200
但是当我尝试使用来自 laravel 的 Http 时:
$http = Http::asForm();
$httpParams = [
'textData' => $content,
'xmlFile' => new \CurlFile($params['file']->getPathName())
];
$response = $http->send('post', 'http://url.com', $httpParams)->body();
dump($response);
响应为空:""。状态是 200。你能帮我吗,为什么使用 Http 门面我有空响应?提前谢谢。请帮帮我!!!
【问题讨论】:
-
为什么不像文档中的示例那样使用它:laravel.com/docs/8.x/http-client#multi-part-requests 或 laravel.com/docs/8.x/http-client#sending-a-raw-request-body,并且空响应很好,这完全取决于您将其发送到的服务器已被编程为回应