【发布时间】:2021-07-03 13:42:42
【问题描述】:
我正在努力解决一个奇怪的问题。我正在尝试使用 API 将文件上传到不同的服务器。我正在使用 Laravel 8.X 和使用 HTTP 客户端。下面是我从控制器调用的代码
if ($request->hasFile('uploadReceipt') && $request->file('uploadReceipt')->isValid()) {
$receiptContent = file_get_contents($request->file('uploadReceipt'));
$originalName = $request->file('uploadReceipt')->getClientOriginalName();
$responseUploadReceipt = Http::attach('attachment', $receiptContent, $originalName)
->withHeaders([
'Accept'=> 'application/json',
'Authorization' => 'Bearer '.$userAccessToken
])
->post($endpoint, $requestData);
dd($responseUploadReceipt->json());
} else {
dd ("Else");
}
我在文件vendor/guzzlehttp/psr7/src/MultipartStream.php:86 中得到一个“内容”密钥是必需的
我花了将近 12 个小时,但无法解决这个问题。我也尝试过像
$receiptContent = fopen($request->file('uploadReceipt'), 'r');
但同样的问题。我遵循文档中提到的相同方式。任何可以帮助我的人将不胜感激。
感谢和问候 阿什什
【问题讨论】:
标签: laravel http file-upload multipartform-data