我正在尝试使用外部API调用上载文件。但是在尝试将数据附加到请求时遇到一些问题。我需要将文件本身和文件名作为表单数据附加。
我尝试了以下方法:
$response = Http::attach('image', $file->path(), $fileName)->withOptions([
"multipart" => [
"name" => "image",
"contents" => fopen($file->path(), "r"),
"filename" => $fileName,
],
[
"name" => "fileName",
"contents" => $fileName
]
])->post("<API-ENDPOINT>");
但是我在post()方法中遇到错误,该方法需要一个数组?
我也试过这样发
$response = Http::post("<API ENDPOINt>",
[
"multipart" => [
[
"name" => "image",
"contents" => file_get_contents("storage/app/images/".$fileName),
"filename" => $fileName,
],
[
"name" => "fileName",
"contents" => $fileName,
]
]
]);
但这也没有像预期的那样工作,我得到了file_get_contents(storage/app/images/e5b7e91dfa34a94f09d200f9436ea4e3f3c0d46e-action-helicopter.jpg): Failed to open stream: No such file or directory
,即使该文件确实存在。
这里的任何帮助将不胜感激。不一定要使用这些方法,只是任何方式来POST的文件数据以及文件名,可以访问的形式主体的请求。尝试检查文档和其他论坛,但没有以前的答案帮助。
1条答案
按热度按时间ddhy6vgd1#
我得到了它排序使用以下: