gpt4 book ai didi

laravel-5 - PHP GuzzleHttp 。如何在 laravel 5.2 中使用 guzzlehttp 上传图像文件?

转载 作者:行者123 更新时间:2023-12-05 09:19:53 25 4
gpt4 key购买 nike

如何使用 GuzzleHttp(版本 6.0)发出 post 请求。我正在尝试执行以下操作并出现错误

我得到图像值

Illuminate\Http\UploadedFile Object
(
[test:Symfony\Component\HttpFoundation\File\UploadedFile:private] =>
[originalName:Symfony\Component\HttpFoundation\File\UploadedFile:private] => 1.53mb.jpg
[mimeType:Symfony\Component\HttpFoundation\File\UploadedFile:private] => image/jpeg
[size:Symfony\Component\HttpFoundation\File\UploadedFile:private] => 1607671
[error:Symfony\Component\HttpFoundation\File\UploadedFile:private] => 0
[pathName:SplFileInfo:private] => C:\wamp\tmp\php32BB.tmp
[fileName:SplFileInfo:private] => php32BB.tmp
)

这里我使用guzzlehttp上传图片

$response = $this->client->request('POST', url('/update_profile'), [
'multipart' => [
[
'name' => 'foo',
'contents' => fopen('C:\wamp\tmp\php32BB.tmp', 'r'),//this path is image save temperary path
]
]
]);

现在我得到了错误fopen(C:\wamp\tmp\php17BC.tmp): 无法打开流:没有那个文件或目录。

如何在multipart中使用contents

最佳答案

我解决了这个问题

$image_path = $post_array['image']->getPathname();
$image_mime = $post_array['image']->getmimeType();
$image_org = $post_array['image']->getClientOriginalName();

$response = $this->client->post(url('/update_profile'), [
'multipart' => [
[
'name' => 'image',
'filename' => $image_org,
'Mime-Type'=> $image_mime,
'contents' => fopen( $image_path, 'r' ),
],
]
]);

关于laravel-5 - PHP GuzzleHttp 。如何在 laravel 5.2 中使用 guzzlehttp 上传图像文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39219749/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com